2

Creating My Windows Form Application and using ADO.Net as Data Access layer and SQL server as my Back End with lots of SP's.

Do i still stick to ADO.NET or go to studying FnH or Linq to SQL? Which shall i choose? Or i still stick in ADO.NET?

Can you give me Recommended WebSites on EF or FluentNhibernate for kick of tutorials..

Thanks in Regards

1 Answers1

5

It's really just up to you to pick one - they're all valid technologies.

If you're already familiar with the low-level ADO.NET constructs, and you don't feel like putting the time into learning a different methodology, you can stick with plain old ADO.NET - this is not going away anytime soon.

If you want to start off with a very simple ORM, I would suggest LINQ to SQL. However, Microsoft has basically left LINQ to SQL in the dust in favor of Entity Framework, so if your project has long-term maintenance concerns, LINQ to SQL may or may not be the best choice. It is a really nice, lightweight, easy-to-use framework though...

If you want to learn the latest MS data access technology, you could try Entity Framework. The initial setup is not too bad, but Entity Framework is a beast, so there might be a bit of a learning curve at some point, if you run into something that works differently than you expect, or you want to learn more. EF is fairly full-featured at this point, but it still lacks some of the functions offered by more mature data access technologies like NHibernate.

Finally, if you want to try something different than the Microsoft offerings, NHibernate is a great framework. You're not going to find the entity designers, property pages, wizards, hand-holding, and stuff like that, but that's almost the point of NHibnerate. In Fluent NHibernate, the primary focus can be on your domain code, and less on the database, which makes it very conducive to unit testing. Entity Framework has gotten better with persistence ignorance, but it still feels a bit heavy-weight compared to NHibernate.

In addition to these, there are several other solid data access technologies that you could look into, but I hope this gives you some info to start with.

Andy White
  • 86,444
  • 48
  • 176
  • 211
  • Which of Data Access Methodologies should i chose EF? Is EF suits also windows application? Ado.net is really old so that i really want to be on track with new ones.. :) – Newbie Developer Apr 19 '11 at 05:04
  • I would probably pick either EF or NHibernate at this point. I think EF has some great tooling and functionality, but it still feels a little heavyweight compared to NHibernate. I like the clean and lightweight feel of NHibernate, but the database generation tools are really nice with EF. Honestly, I want to say NHibernate, but the tooling support and convenience features in EF almost makes me think twice. – Andy White Apr 19 '11 at 05:06
  • Do i need to drop low level ado.net to EF or Nhibernate/Fluent ? Still Confusing... XD – Newbie Developer Apr 19 '11 at 05:18
  • No, you don't have to drop into ADO.NET code in either EF or NHib if you don't need to. These frameworks are not exactly trivial to learn, so you're going to have to spend some time reading and practicing whichever one you pick. – Andy White Apr 19 '11 at 05:19
  • Cool...So you still both use EF/NHib in same/different project? can you add sites for tutorials on EF..Thanks – Newbie Developer Apr 19 '11 at 05:33
  • @Andy i am using VS 2008 and .net 3.5 do can i create EF using it? I know EF 4 only supports 2010 version. – Newbie Developer Apr 19 '11 at 06:07