Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Just moving from Visual Studio 2005 webforms to 2010. Bit confused of lately about what to learn on the new version. I will just be doing web applications only

  1. Should I learn entity framework or MVC framework for my new applications moving from simple webforms?

  2. What would you guys advice to learn as top priority moving to Visual Studio 2010 which will benefit me the most?

share|improve this question

closed as off-topic by MichaelT, Corbin March, gnat Nov 18 '15 at 9:04

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions about what language, technology, or project one should take up next are off topic on Programmers, as they can only attract subjective opinions for answers. There are too many individual factors behind the question to create answers that will have lasting value. You may be able to get help in The Whiteboard, our chat room." – MichaelT, Corbin March, gnat
If this question can be reworded to fit the rules in the help center, please edit the question.

Asp.NET MVC (+ Razor) is amazingly simple and elegant compared to WebForms. And I started my first MVC project only few weeks ago. I won't touch WebForms anymore :). – sabiland Oct 6 '11 at 9:59
Is it true that MVC applications take a huge amount of time to build then webforms ? – Zo Has Oct 6 '11 at 10:05
From what I've seen in those few weeks (I rewrote (from scratch) my own home-page from WebForms to MVC) - I would say on the contrary. But you should wait for some MVC expert to express his opinion. – sabiland Oct 6 '11 at 10:17
Ok, thanks for the info sabi. – Zo Has Oct 6 '11 at 11:24
Razor generates much more beautiful output than the old ways... – Rig Mar 25 '12 at 2:20
up vote 3 down vote accepted

There are four main areas you should invest a lot in learning:

  • The C# language - there are huge and important features introduced after C# 2.0. These are not trivial, and you should really learn them. LINQ and Lambda expressions are the most significant ones. Overview of C# 3.0 The differences from version 3 to 4 aren't that huge.

  • The ASP.Net - if you decide to continue using it, there are lots of new things too. What's New in ASP.NET 4

  • The ASP.Net MVC framework - while it is not replacing Classic ASP.Net, there is a trend of more agile developers moving to it. Learn MVC

  • The Entity Framework - it has matured and there is no doubt Microsoft is investing heavily in it. This is their choice of data access framework, and you should at least be familiar with it.

Note that all these features improve a lot on the previous versions and introduce new concepts to the way you develop applications. These have been quickly and widely adopted by the community.

You should definitely start learning them.

share|improve this answer
Thank you Boris for the detailed reply. Out of all these what would you give the top most priority ? I am already familiar with C# 2.0 & ASP.NET 2.0. – Zo Has Oct 7 '11 at 5:08
LINQ and lambdas are essential, so start with them. MVC next. – Boris Yankov Oct 7 '11 at 10:53

There are a lot of diffrences between .Net 2.0 and 4

I would recomend you learn MVC, lambda expessions first. They will make a huge diffrence to your development work. After that just pick up a c# 4 book and have a read. There are too many new nice features to comprehensively list

share|improve this answer
Thank you Tom. What do you say about entity framework ? – Zo Has Oct 6 '11 at 10:05
I find it very usefull for talking to MySQL. Its worth learning but wont make such a huge diffrence as MVC and lambda expressions. Lamdba expressions I use multiple times in every project – Tom Squires Oct 6 '11 at 10:35

Considering Web development, the VS2005(.net 2) and VS2010(.net 4) are very much different. The .net 2 web forms was somewhat made for desktop application developers, so that they can easily start with web development fast, with little knowledge. It follows same stateful model as it's desktop counter part- winforms. But web applications are stateless do.

For migration I would suggest, give more focus on core web technologies- HTML, CSS and Javascript. Try have a good command over them. Combining that with object oriented knowledge, MVC will fill just right. And will make you productive.

And don't forget to learn LINQ(as came after version 2) and how it has changed the .net world.

share|improve this answer
Thanks Gulshan, what about entity framework ? – Zo Has Oct 6 '11 at 11:26
@DamienJoe: At the end of the day if you understand the concept behind ORMs, it's not especially useful to learn a specific one unless you plan to use it for a project. If you're not familiar with ORMs, you might want to start with Linq to SQL as it's much simpler and work your way up from there. – R0MANARMY Oct 6 '11 at 13:37
Thanks Roman, I will take your advice on this one =) – Zo Has Oct 7 '11 at 5:09

Not the answer you're looking for? Browse other questions tagged or ask your own question.