views:

153

answers:

3

I watched a little introduction into ASP.NET Dynamic Data, and I noticed this option to create a data driven website for the first time. I have a database with a few tables, just created a Dynamic Data application out of my database and well... my application with a lot of nicely looking web pages, navigation between them and all kinds of CRUD operations was finished after 3 minutes.

OK, seriously, it isn't finished of course. There is a lot of custom logic to introduce, design to change, and also pages or relationships to remove I don't want actually to see in the web application.

But now I am wondering if ASP.NET Dynamic Data is at least a viable starting point or do I better start from scratch and create page by page? I could imagine that it might be useful to create a quick database maintenance web interface but is it good for a very customized web application? Is it in the end more complicated to modify the scaffold than building up everything from the ground?

I'm very interested in your experiences or recommendations regarding Dynamic Data! Thanks in advance!

A: 

I very like ASP.NET Dynamic Data as it is a fast way for creating data driven applications. Customization is not a complicated task.

I wrote a corporate website with this technology from the scratch - it takes appr. 2 months for all. So my point of view that this is a good starting point for web applications development.

sashaeve
Just for interest: Did you use LINQ to SQL or Entity Framework as your data source? I saw those two options are available. Did you compare them when you started and figured out perhaps that one is better or easier to use together with Dynamic Data than the other?
Slauma
I've used LINQ to SQL because one-to-one mapping was enough for me.
sashaeve
A: 

if your archetecture resembles ASP.NET Dynamic Data or DotNetNuke or some other starter kit, go for it, if

  • application is small to medium sized
  • you do not have strict deadlines
  • you are learning the technology.

otherwise or when you will be skilled in particular technology, you will prefer yourself working from scratch as it gives you more freedom and space for the implementation of ideas.

For e.g, one reason for the breakthrough for Asp.Net MVC had was many .Net developers wanted freedom over the development / architecture / flow and rendering (HTML) of the product they were building. Asp.Net WebForms does provide solid and vast grounds for swift development and templates but developers had to go according to the architecture. This freedom is available under MVC and developers can make use of nearly all Libraries and skill set available and go their own way.

one successful sample is Stackoverflow.com itself


hope this helps

Asad Butt
I'm not afraid going the harder way. I'm more afraid to go a way which after some time and with a growing application turns out to be less flexible and more complicated if I want to implement features which are perhaps not well supported within the Dynamic Data framework. If I understand your answer correctly I will have more freedom and flexibility with MVC (and even Webforms?). Hm, I am still a bit skeptical about Dynamic Data.
Slauma
To my knowledge Dynamic Data Framework is based on ASP.NET WEBFORMS
Asad Butt
+1  A: 

I could never wrap my ahead around it enough to get any use out of it. At first, I thought this was Microsoft's answer to Ruby on Rails, and I was looking for the same benefit. I don't it comes close to having the same benefits. When I then compare it to a CMS (DotNetNuke, Sharepoint, Drupal, etc) it then looks really underpowered. Compared to ASP.NET MVC, it seems like going the wrong way from basic ASP.NET (MVC is removing bad abstractions from ASP.NET, while DD is adding even more abstractions).

Personally I'd rather build something from scratch in ASP.NET MVC, though my day job is regular ASP.NET. I'm also learning Drupal as I haven't found the sweet spot with ASP.NET based CMSes. One thing at at a jobsite you're going to want to use technologies everyone else knows. So I think that limits where knowing Dynamic Data is generally useful, as basically any legacy application won't be using it and you're unlikely to find a team with existing ASP.NET Dynamic Data experience.

The quick scaffolding is spiffy but at the end of the day I don't think it will make web development easier.

Frank Schwieterman
Yes, the lack of experience in other developer teams is an important point! I mark this as answer. Unfortunately I cannot mark more than one although all three replies are valid and interesting. So I mark the advice which I'll probably follow. At least I found so far that the Dynamic Data scaffold is useful to throw a few test data manually into my database, at least more comfortable than adding data in SQL Server Management Studio.Thanks so far for all your answers here!
Slauma