I am developing a portable CMS (Well...no so much a CMS, but more of a site rendering engine), and I find myself with a conundrum in terms of storing the data.
Right now the app is up and working at http://m.realtormanagement.com
(no, there is no design yet, it was just a test to see how fast the render engine took)
and am currently using XML .Config files as storage for the sites "Settings", "Page Templates", and "Page Contents".
I figured XML because I want to be able to upload this app to any windows server in the world and have it work out of the box. While XML seems to be pretty dang fast, I am concerned that on bigger sites (mostly those with hundreds of content pages), it may slow the rendering down due to the sheer number of "records" in the PageContent.config file, when it first loads.
So... my question becomes this, what should I use as an embeddable source for storing (and potentially editting) the data.
I've read SQL CE is an embedable solution, as well as SQLLite, (although I do want to stay away from sqllite), but will SQL CE give the performance I would expect it should being SQL and not XML for data.
I do understand that there may be file locking issues with the XML, but I believe I can circumvent that with clever caching :)... yes this is all done in .Net 4