Thursday, August 4, 2011

Dynamic Data Limitations in ASP.NET

I recently completed a small, yet robust Dynamic Data website in ASP.NET 4.0. Going through the whole process, I can't say I recommend a Dynamic Data solution.

Pros:

  • You can get a site up and running very quickly. 
  • Many concepts like routing are used in other places such as MVC, so learning the ins and outs of Dynamic Data doesn't waste too much time. 
  • It works well with the Entity Framework. 
  • The code generation is pretty well done. I wouldn't say it is typical of what I would think of with regards to previous code generation products and that's a good thing.

Cons:

  • Your data needs to be normalized to a fault. Column names needs special ordering (if you want it to work without having to extend everything). This isn't always possible, especially if data is only loosely related. Nothing happens in a vacuum. In a typical shop data will be coming from more than one data source (SQL Server, DB2, MySQL, etc) and trying to get Dynamic Data to work well with all of them in tandem will cause more problems than not.
  • There is simply not enough comprehensive documentation. There's only one blogger http://csharpbits.notaclue.net/ out there who has taken the reigns on a technology Microsoft seems to have forgotten. I have to give the guy props for really making it work. 
  • Little things, like column order and adding a dropdownlist with static, non-relational data can become a very complicated process.

The bottom line is that things that should be easy become difficult, very quickly and I would be very hesitant handing a Dynamic Data solution to an entry level developer. And honestly, I can't say I'd look foward to working on another Dynamic Data solution.

No comments:

Post a Comment