On Monday, my website host’s (DreamHost) database server crashed and they restored the previous week’s data for all of the databases hosted on that server. Eventually, they were able to restore the daily backups to disk, which allowed users to restore that day’s backup. However, when I went to restore the daily backup, it was about 16 hours old.
Within those 16 hours, one forum had hundreds of posts, topics, and forum reorganization; another WordPress blog had two dozen of posts; while my personal blog (this site) had no changes. At the time, my backup scheduled was:
I’ve used SubSonic 2.x for a while and I’ve blogged about how useful it was as a tool to aid my development projects. A few weeks ago, SubSonic 3.0 was released and I hadn’t spent much time reviewing the updates and changes to version 3.0 until this week.
At the present, I have several large projects using SubSonic 2.x and I have a new smaller project starting this week. So I decided to download and install SubSonic 3.0 and use the small project to get familiar with the updates prior to updating my other web sites from 2.x to 3.0.
Recently, I ran into the following error when trying to serialize some SubSonic generated classes.
Cannot serialize member ‘XXX’ of type System.Nullable`1[XXX]. XmlAttribute/XmlText cannot be used to encode complex types.
The SubSonic autogenerated classes cannot serialize nullable types such as DateTime? and GUID?. This is really a .NET serialization problem and not directly related to SubSonic, since the SubSonic library just uses the native .NET code for serialization.
Every now and then, I come across a developer utility that’s worth mentioning. The utility might not be new or even great, but its a tool that I’m able to put to use somewhere to solve a problem or just assist in the problem solving.
The FetchXML Builder by James Downey is a great tool because it is one of those niche utilities that speeds up development time and helps the developer (me). The FetchXML Builder is a query-builder like tool used for creating FetchXML requests for Microsoft CRM.
So unless, you’re a CRM developer, you probably won’t find this as cool as I do.
Recently, I needed to denormalize a database by putting child records into a single delimited field. For example, the following tables contain source data and the expected output from our function.
The following code is based on Microsoft SQL Server 2005 and has only been tested using Microsoft SQL Server 2005.