- May 27, 2002
- 12,648
- 201
- 106
For the last several years(~6) I have been a ASP.net WebForms developer using C# and ADO.net with SQL Server (also some Javascript/Jquery, but is less relevant to this discussion).
What I was hoping to find out from the seasoned MVC developers, is why it is a superior platform in the realm of Data Driven enterprise web applications.
Now I have taken 2-3 courses on MVC to learn how to do some mvc programming, but from my perspective, I cant see how MVC would be better suited for the tasks I do.
I do see that the MVC platform is well suited for ASP.net Web API restful services. URL Routing allows it to make very efficient use of how to many URLs to serve up large numbers of different JSON data streams, such as in the world of Weather/GIS/etc.
I see how MVC gives a more rapid application creation platform, and is much better in the unit testing than webforms, because the UI is much more easily seperated from the Business Logic, Data Access Layer, and Presentation Layer.
Even though my personal preference is to write C# ADO.net code using SQLDataReader / SQLDataWriter, etc I can see the benefit of using the wizard generated Entity Framework. And if I could write those manually by C#, I would be tempted to write EF to SQL Stored procedures.
But what I dont see is how MVC is better at doing rich web pages for complex data UI pages. All the classes and demo's I have seen are all simple sites, many of which are the MS Contoso University or using the MVCMusic store example. Most of them are very simply forms, which in my world of enterprise data do not equate.
From the simple world of using postbacks (not present in MVC) to create cascading dropdowns, ListBox Pairs with Left Right Move Item Controls, to using the MS AjaxControlToolkit Extensions to using GridViews, Editable Gridviews, Data Entry Gridviews, all of which make inserting ASP.net controls in any column using the TemplateField a breeze. And i'm doing all this writing code. I'm not using the designers, wizards, or drag and drop controls, I completely write my own ASPX files, code-behind files, and script files.
MVC doesnt have any serverside controls, and that makes rich enterprise data driven web clients seem difficult to near impossible to me.
Is webforms the superior tool, or is there something about MVC which I am just flat out missing?
Edit: fixed some spelling/grammar mistakes
What I was hoping to find out from the seasoned MVC developers, is why it is a superior platform in the realm of Data Driven enterprise web applications.
Now I have taken 2-3 courses on MVC to learn how to do some mvc programming, but from my perspective, I cant see how MVC would be better suited for the tasks I do.
I do see that the MVC platform is well suited for ASP.net Web API restful services. URL Routing allows it to make very efficient use of how to many URLs to serve up large numbers of different JSON data streams, such as in the world of Weather/GIS/etc.
I see how MVC gives a more rapid application creation platform, and is much better in the unit testing than webforms, because the UI is much more easily seperated from the Business Logic, Data Access Layer, and Presentation Layer.
Even though my personal preference is to write C# ADO.net code using SQLDataReader / SQLDataWriter, etc I can see the benefit of using the wizard generated Entity Framework. And if I could write those manually by C#, I would be tempted to write EF to SQL Stored procedures.
But what I dont see is how MVC is better at doing rich web pages for complex data UI pages. All the classes and demo's I have seen are all simple sites, many of which are the MS Contoso University or using the MVCMusic store example. Most of them are very simply forms, which in my world of enterprise data do not equate.
From the simple world of using postbacks (not present in MVC) to create cascading dropdowns, ListBox Pairs with Left Right Move Item Controls, to using the MS AjaxControlToolkit Extensions to using GridViews, Editable Gridviews, Data Entry Gridviews, all of which make inserting ASP.net controls in any column using the TemplateField a breeze. And i'm doing all this writing code. I'm not using the designers, wizards, or drag and drop controls, I completely write my own ASPX files, code-behind files, and script files.
MVC doesnt have any serverside controls, and that makes rich enterprise data driven web clients seem difficult to near impossible to me.
Is webforms the superior tool, or is there something about MVC which I am just flat out missing?
Edit: fixed some spelling/grammar mistakes
Last edited: