As I wrote 10 days ago, a new BlogEngine.NET release had to be made to deal with some issues found in version 1.4. It’s exactly one month since the release of the 1.4 version and a lot has been fixed, tweaked and changed.

Besides some new cool features, more than 50 work items from the issue tracker at CodePlex have been implemented. That’s a lot of modified code and the result is significant. Here’s a list of some of the changes in version 1.4.5.

One of the exiting new things is that BlogEngine.NET now is released with SQL Server, MySQL, SQLite and VistaDB scripts and databases. That makes it really easy to choose the database that suits you best if you don’t want to go with the default XML provider. And by easy I mean as easy as copying a couple of files to the bin and App_Data folder and you’re all set to go.

I know some of you have had some issues with the 1.4 release, so I really hope you’ll enjoy this new version.

Download it now


Comment by Juan

Hi Mads, did anything change at the theme level? I have some customizations to the standard theme so I'd have to add them myself if they exist.

Thanks for the release!

Comment by Some.Net(Guy)

I was definitely up late last night playing with the new release. I'm pretty sure I was touching things I shouldn't have been (if I want to successfully apply any updates/patches), but I think overall this will work for me.


Does the <div id="widgetzone"> have to be invoked for the drag and drop functionality of the widgets?


Comment by Cristiano

Hi Mads,
on your site, if I insert my web address on the "[b]Filter by APML[/b]" function, is returned "[i]APML document could not be found[/i]" ...
But on my site, if I insert your web address on the "[b]Filter by APML[/b]" function, this [u]work fine[/u] !
Why ?

Comment by Mads Kristensen


I found and fixed the bug. When BE retrieves your website HTML using a WebClient, it uses an IE7 user agent. That made your server respond with a strange status saying: [b](999) AW Special Error[/b].

I have removed the user agent and now it works fine.

Comment by Cristiano

Good work ! You are very fast ;-)
I do not understand the answer given by my web server :-( It's very strange ...
In the head section of my master page I have inserted the meta tag:

[i]<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />[/i]

to ensure compatibility to IE7 when my site is viewed with IE8 (Beta).
But I don't think that the problem is due to this ...

Comment by Some.Net(Guy)

Mads -

I've done some hacking through the code and the core, and I'm finally starting to get it to where I want it. One thing I'm having problems with is if I want to store additional data (say in a MySQL database), is there anything built in (some data retrieval functions, etc) that would help me retrieve that info? Or do I have to write my own data-access layer?


Comment by Tony

Since upgrading from 1.4.0 to I've been getting a very odd YSOD... but press refresh and everything's fine (!)

Exception details: System.Xml.XmlException: Root element is missing.
Source File: <folder> App_Code\ExtensionManager\Manager.cs Line: 236

i.e. ex = (ManagedExtension)serializer.Deserialize(reader);

My web.config is using SQL Server 2005, i.e.:
- blogProvider default = DbBlogProvider
- DbBlogProvider points at BlogEngine which is SqlClient with my connection string

Could well be environment somewhere, any pointers?

Comment by Tony

Every row in be_DataStoreSettings has an ExtensionType of 0.

I had run the Sql upgrade script from 1.4.0. to 1.4.5.

As mentioned yesterday clicking refresh resolved the problem.

Oddly it's not done it today (meh intermittent), hopefully that means that it was a hosting problem; I'll keep an eye on it.

Comment by Tony

Fixed it.

I locally created a clean 1.4.5 database and compared it to an upgraded database.

- clean db had 1x row (Settings had an Xml value) - did *not* replicate
- upgraded db had several rows (with empty Settings values) - *did* replicate

Using Sql Profiler I found that when I replicated the issue locally, BlogEngine was running a "SELECT Settings FROM be_DataStoreSettings ..."


So I truncated be_DataStoreSettings, re-created the value from the clean db script which resolved the problem.

Comment by Andy

Just startedwith BlogEngine - I Love it! My host only provides SQL 2000 so I have published updated SQL Server 2000 setup scripts as the first post on my site.