.NET MVC or just plain old ASP.NET? .NET MVC or just plain old ASP.NET? asp.net asp.net

.NET MVC or just plain old ASP.NET?


ASP .net MVC will be closer to your rails experience.

ASP .net Web Forms (what is usually called ASP.net) is clearly different, but if you are learning for the sake of finding jobs, it's what will pay for a long time(there are lots and lots of sites, both internal and public-facing) built on ASP .net web forms. There are some emerging sites using ASP.net MVC, but it's a long way.

So, it depends on your goals.If you just need to know "a little .net", go with MVC because the concepts will be known to you. If you need to know "the .net web stack", then most people will thnik of web forms, not MVC...

And yes, samples in the microsoft world tend to be on the "lighter side". It's near impossible to find demos that do not have the "draggy-droppy" feeling, and it is a REAL problem.


I think that the DAL-less examples you're seeing are written that way for simplicity. Serious ASP.Net applications always use layers such as BLL and DAL. The separation of the DAL is just omitted in simple examples -- that does lead to the unfortunate mis-interpretation of the examples by people who don't know better.

I believe that MVC is more difficult to program, and that it is best used only when there is a specific reason for using it -- SEO optimization, TDD development. It ignores many of the sophisticated functionality available in ASP.Net WebForms and is often compared to classic ASP. And, I don't believe that MVC has become widely adopted in many corporate environments, so if you want to learn the approach used by everybody else, stick with the basic ASP.Net and save MVC for later.

As a .Net beginner with abundant experience in other programming languages, I would recommend that you continue your studies of ASP.Net using WebForms. If you're looking for a serious DAL example, I would highly recommend this lengthy tutorial on the ASP.Net website. It has all of the architectural refinements you seek, and may prove helpful in learning how to use the many data display controls.


I would choose ASP.Net MVC over ASP.Net WebForms for one reason: testing. MVC was designed from the ground up to be a pluggable and testable system. Testing is, or at least should be, an inseparable part of your development cycle. Testing MVC is orders of magitude easier than WebForms due to the ability to MOCK or replace parts of the core API. Doing the equivalent in WebForms is either not possible or very unwieldy.