Look Ma... No XML posts in BlogEngine.NET
A few weeks back, I put together an initial Microsoft SQL Server (MSSQL) blog provider for BlogEngine.NET. It basically allows me to keep all my posts, comments, and stuff in a MSSQL database instead of the standard XML files that BlogEngine.NET uses as a default.
Why would I want to do this? Well, I not really sure.
It has been a very popular request on the BlogEngine site and I thought that someone from the team should do it and use it so that it doesn't get left behind in the development. I seemed like the logical person for the job for a number of reasons:
<li>I have SQL Server access with my hosting through <a href="http://www.webhost4life.com/default.asp?refid=anyveldt">WebHost4Life</a>. </li>
<li>My <a href="/personal/">personal/family site</a> is very SQL Server dependant so I'm going to keep my database access for a while. </li>
<li>I'm a team player.</li>
While the bulk of my data is coming from SQL Server, there are still a few pieces of data that are gathered from xml files. Specifically, the settings, the blog roll (not in use on my site as of today), and referrals. Also, files (images, zip files, etc.) are stored in the App_Data folder. These items were not a part of the base blog provider class that I implemented to make the SQL Server provider, so they remain as they were for now.
I'm not really sure how I feel about moving all these pieces over either. I like having files/images where they are and having my settings in an xml files feels right to me. The others I think should come over eventually which means getting them added to the blog provider or creating a Control provider to handle this storage of information.
On a side note, I'm ignoring the membership provider for now. BlogEngine.NET uses implements the membership provider and defaults to use an XML provider. I could switch this to MSSQL, but I haven't done it yet. One thing at a time.
The BlogEngine team will need to discuss handling the blog provider further, but I'm guessing that won't happen right away as we are working on getting the new release done and the documentation that goes with it. In the meantime, I'd really like to hear from those people who are itching to use SQL for data storage what your preferences are for storing this other data and why. You can let me know in the comments or on the discussions on CodePlex.
In the short term, I'll be testing it out on my site for a while before putting together the scripts for installing and using it. Everything seems to be working great so far as I've been playing with it on a test site for a little while now. That said, if you see something that isn't working as expected, please let me know.