1

I'm learning MVC3 (my first touch with MVC) and going through tutorials in the book Pro ASP.NET MVC 3 Framework, 3rd edition.

As I go through the tutorials I am started to get a little scared of all the automagic stuff going on. What I hated about ASP.NET webforms was all the automagic, smoke and mirrors.

I like dealing with the nuts and bolts more often than not because I don't like the whole "And then you just trust the system to do it's thing, trust us, it will work", because even though it does work most of the time, whenever you go out of bounds or want to do something more complicated, the obfuscation of the smoke and mirrors causes a lot of headaches (ok this paragraph was a bit of a rant, though necessary for my point).

Before I get too far down this road...is MVC3 just a more sophisticated, smoke and mirrors, obfuscating framework like ASP.NET webforms, or is it going to allow me to peek under the hood and get into the details more easily than asp.net? Is this worth continuing?

SIDE NOTE: PLEASE, if you don't like this question, don't vote it down. Help me make it better so it can benefit the community. Thank you! :-)

richard
  • 12,263
  • 23
  • 95
  • 151
  • possible duplicate of [ASP.Net MVC vs ASP.Net Forms](http://stackoverflow.com/questions/1552984/asp-net-mvc-vs-asp-net-forms) – Charlino Nov 29 '12 at 05:26
  • In case you want some examples of what I'm talking about re: the automagic stuff, model binding, strongly-typed views, etc. – richard Nov 29 '12 at 05:27
  • Hi Charlino, I'm not asking about a comparison. I am well aware of the differences. But just because they are different, doesn't mean they aren't both obfuscating frameworks that hide the implementation from developers and make things more difficult than they have too. – richard Nov 29 '12 at 05:28
  • I don't know dude... this subject seems like a dead horse to me, it's well known that MVC provides extensibility at nearly every turn. Try this for a start: http://codeclimber.net.nz/archive/2009/04/08/13-asp.net-mvc-extensibility-points-you-have-to-know.aspx – Charlino Nov 29 '12 at 05:36
  • Cool post! Thank you, I will read it. – richard Nov 29 '12 at 05:42
  • 2
    Try to implement dependency injection in web forms using constructor injection in your page. You can't. Try to alter the HTML generated by a grid. You can't. Try to parse 15 parameters into an objec automatically. You can't (until web forms 4.5 introduced its version of model binding). They both have their pros and cons but you would do yourself only good by learning it. – Adam Tuliper Nov 29 '12 at 07:25

1 Answers1

1

I've been working with this framework for one year and a half, and all the "magic" stuff has never got in my way, actually most of the time it has helped me, and when it hasn't then I just have coded around it.

I mean you can code the way you want. You don't like the "Routing" feature? you can change it as easy as going to web.config and rewrite it.

You don't like the binding magic for your parameters? Then get them manually HttpContext.Request.Params["yourParameter"].

You don't want to use EF?, ok use whatever ORM you want or just create your own ORM and use it.

You don't like the MVC pattern? then write all your code inside your views (I think I went too far).

I mean it's even open source, do you want your own magic inside the framework? you can do it.

In my very personal opinion, it is worth continuing.

marcos.borunda
  • 1,486
  • 1
  • 17
  • 34