Why not just use a strongly-typed DataSet?

Oct 26, 2007 at 1:57 AM
So I sat down with a fellow programmer today to discuss the possibility of using the NuSoft Framework for a project we are working on. I was giving some examples of how you set up your database schema and have the NuSoft Framework, through CodeSmith, generate the entity framework for you, and some code samples on how to manipulate your entity objects' data and save it to a database. He was as impressed as I was when I first took a gander at the framework.

He then asked me "Why not just use a strongly-typed DataSet?". My experience, thus far, has been with weakly-typed DataSets, and quite honestly, they left a VERY bad taste in my mouth. Honestly, I would be a very happy person if I never heard the word "DataSet" again.

Unfortunately, I don't have much experience with using strongly-typed DataSets nor the NuSoft Framework, so I was not able to come up with a good answer for him. He showed me some of the features of the typed DataSet, and it does offer very similar features, but built-in to Visual Studio.

If the strongly-typed DataSets can provide the same functionality, why even bother to use the NuSoft framework? My programming friend made a good point: When we want support for DataSets, we only have to do a quick google search to find our answers quickly. With the NuSoft framework, we are essentially relying on you guys for support... and who knows if we will get it or not?

So tell me, NuSoft, what advantages does the NuSoft Framework provide that Strongly-Typed DataSets don't? Why should I pick YOUR framework to the one that Microsoft seems to already provide out-of-the-box? I realize that you are providing the framework out of the kindness of your hearts (and, hey, maybe a little bit of publicity), but can we count on you when we have some serious questions on how to effectively use it?

Thanks again! I hope to hear an answer from you soon!
Coordinator
Oct 26, 2007 at 1:01 PM
I've heard this question before - custom objects versus datasets. The main advantage I see of using typed datasets is the ease with which you can set them up. The disadvantage is that they are tough to extend and a pain to regenerate when you make database changes - this is coming from experience in the past! Typed datasets will get you roughly 80% of the way, but that extra 20% is really painful to write and maintain. The main advantage that datasets have is taken away because the NuSoft Framework is simple to generate. In my opinion, coding against the NuSfot Framework's API is much cleaner (and more OO in nature) than coding against typed datasets. Having used both, I'll never use typed datasets unless forced to.

As far as support goes, we do our best, and will continue to do that. We will attempt to answer all questions and provide advice on how to use it effectively, but since it's open source, you always have the option to dig into it and figure out the issue or modify it to suit your needs.

Here's an older MSDN article discussing the two options:

http://msdn.microsoft.com/msdnmag/issues/05/08/CuttingEdge/default.aspx

Hope this helps.