I'm a newbie to ASP.NET MVC, however i am quite familiar with and love the MVC design pattern. We have been spending a lot of time doing a feasibility analysis and high-level design with Silverlight, PRISM and WCF RIA for our new web-based cloud solution.
Then we came across several opinions on the net that HTML5 is the way to go, and all the billion dollar companies are pushing for it.
So, enter ASP.NET MVC. It sounded cool, we look into it, and it has almost no UI controls that could make an impressive View for the users. WebForms at least had something. Coming from Silverlight, this was like a huge downer, not to mention the other obtuse
wrapper code that needs to go over everything. So while looking for solutions, it is a) write UI controls ourselves from ground-up OR b) buy third-party controls OR c) rely on free toolkits built by hobbyists.
I love Microsoft, but how can they promote such a technology without giving at least a decent set of UI Controls to build professional-looking apps?
How about ListView, DataForm with command/navigation buttons, DataGrid with sorting/grouping and TreeView?
all a matter of using jquery and a bit of ajax.
personally i come from a c++ environment when i got introduced to webforms i had something like "this is not programming, this is drag-drop-play". as in c++ i never used a designer so i went into mvc what gives me allot more opportunities than webforms in the
way of controls, jqueryui for an autocomplete, datepicker,...
listviews are just <ul><li></li><ul> with a foreach or for loop, a dataform with several buttons are jquery, ajax and send to the right method you can even use some json for this, a datagrid wih sorting/grouping/paging is also just a partial with a table
in it on page click renew the partial and load the right page by using entity framework skip and page. sorting just use a orderby on entity framework it's childsplay really. for the treeview i never actually used a treeview but i bet a <ul> <li></li></ul>
can be used for this with a bit of css
by making these controls in mvc for yourself you can customize it for anything.
to give an example i have a datagrid with 6000 inputs if i would try to do this the webforms way every single browser would crash but by using a bit of jquery and creating the controls on fieldclick it's now possible for me to manage such a huge dynamic grid
that was somewhat encouraging, but it does feel like being recommended to write code in assembly language. It seems msft has taken a few steps back in asking business app developers to write code for basic UI controls. There isn't even a design surface!
Asp MVC is being marketed with stuff like "developers can take full control of rendered HTML", when what it means is "we have not developed stable UI controls yet, so do it yourself for now", and then if/when they release it next year, we have to put our
code in garage sale.
But thanks for your suggestions, may have to roll the sleeves up and get into the nitty gritty of basic web stack development.
I love Microsoft, but how can they promote such a technology without giving at least a decent set of UI Controls to build professional-looking apps?
This is the approach taken by frameworks in other languages (like PHP and Ruby). They don't have autogenerated HTML, you write most of the HTML yourself. One of the most common complaints I hear about ASP.NET WebForms is the amount of ugly autogenerated
code (both HTML and JavaScript). ASP.NET MVC removes a lot of the pain points of WebForms. Things like the autogenerated HTML, the complex ASP.NET page lifecycle, and ViewState are all no longer a problem with ASP.NET MVC.
In the end, if you want a set of drag and drop components that write the HTML for you, WebForms is still your best bet. It's still a supported solution, and Microsoft will definitely continue to support it (there's some improvements coming with ASP.NET 4.5).
On the other hand, if you want a simpler solution where you have better control over the HTML, ASP.NET MVC is awesome. Teaching a PHP or Ruby developer how to use ASP.NET MVC is a LOT easier than teaching them how to use WebForms.
ok .. simply MVC is a concept of implementation that u can organize ur source code files in efficient way .. and it gives u more (software engineering staff) flexibility to use models and views with controllers .. and the best thing in MVC is reusablility
of models and views..
That was a good answer. However, I have a better answer: I'm going to stick to Silverlight.
Designing "real" OOD-based LoB apps using the basic web stack is a distant dream. The SoC concerns addressed by ASP MVC is miniscule in comparison to frameworks like PRISM, and hopefully Microsoft stays real and continues to pursue delivery methods like
Silverlight for web applications.
cp.net
Member
1 Points
5 Posts
Why MVC?
Sep 21, 2012 05:27 AM|LINK
I'm a newbie to ASP.NET MVC, however i am quite familiar with and love the MVC design pattern. We have been spending a lot of time doing a feasibility analysis and high-level design with Silverlight, PRISM and WCF RIA for our new web-based cloud solution. Then we came across several opinions on the net that HTML5 is the way to go, and all the billion dollar companies are pushing for it.
So, enter ASP.NET MVC. It sounded cool, we look into it, and it has almost no UI controls that could make an impressive View for the users. WebForms at least had something. Coming from Silverlight, this was like a huge downer, not to mention the other obtuse wrapper code that needs to go over everything. So while looking for solutions, it is a) write UI controls ourselves from ground-up OR b) buy third-party controls OR c) rely on free toolkits built by hobbyists.
I love Microsoft, but how can they promote such a technology without giving at least a decent set of UI Controls to build professional-looking apps?
Regards,
cp
ignatandrei
All-Star
134832 Points
21599 Posts
Moderator
MVP
Re: Why MVC?
Sep 21, 2012 05:47 AM|LINK
1. If you compare any MS Grid with any vendor - the vendor wins.
2. What controls do you need? Jquery UI have all I need . And for grid I use a foreach ....
cp.net
Member
1 Points
5 Posts
Re: Why MVC?
Sep 21, 2012 06:29 AM|LINK
Hello ignatandrei,
Thanks for your response. How long have you used JQuery UI controls, are they stable for long-term usage?
How about ListView, DataForm with command/navigation buttons, DataGrid with sorting/grouping and TreeView?
Thanks
cp
Mikesdotnett...
All-Star
154840 Points
19854 Posts
Moderator
MVP
Re: Why MVC?
Sep 21, 2012 06:41 AM|LINK
I think you need Web Forms.
Beginning ASP.NET Web Pages with WebMatrix | My Site | Twitter
sp00k
Participant
1916 Points
435 Posts
Re: Why MVC?
Sep 21, 2012 07:11 AM|LINK
all a matter of using jquery and a bit of ajax.
personally i come from a c++ environment when i got introduced to webforms i had something like "this is not programming, this is drag-drop-play". as in c++ i never used a designer so i went into mvc what gives me allot more opportunities than webforms in the way of controls, jqueryui for an autocomplete, datepicker,...
listviews are just <ul><li></li><ul> with a foreach or for loop, a dataform with several buttons are jquery, ajax and send to the right method you can even use some json for this, a datagrid wih sorting/grouping/paging is also just a partial with a table in it on page click renew the partial and load the right page by using entity framework skip and page. sorting just use a orderby on entity framework it's childsplay really. for the treeview i never actually used a treeview but i bet a <ul> <li></li></ul> can be used for this with a bit of css
reffer: http://forums.asp.net/t/1652809.aspx/1
by making these controls in mvc for yourself you can customize it for anything.
to give an example i have a datagrid with 6000 inputs if i would try to do this the webforms way every single browser would crash but by using a bit of jquery and creating the controls on fieldclick it's now possible for me to manage such a huge dynamic grid
cp.net
Member
1 Points
5 Posts
Re: Why MVC?
Sep 21, 2012 07:55 AM|LINK
sp00k,
that was somewhat encouraging, but it does feel like being recommended to write code in assembly language. It seems msft has taken a few steps back in asking business app developers to write code for basic UI controls. There isn't even a design surface!
Asp MVC is being marketed with stuff like "developers can take full control of rendered HTML", when what it means is "we have not developed stable UI controls yet, so do it yourself for now", and then if/when they release it next year, we have to put our code in garage sale.
But thanks for your suggestions, may have to roll the sleeves up and get into the nitty gritty of basic web stack development.
ignatandrei
All-Star
134832 Points
21599 Posts
Moderator
MVP
Re: Why MVC?
Sep 21, 2012 07:56 AM|LINK
I think 2- 4 years approx.
Microsoft dAtagrid is not usable for large data( performs sorting on memory)
You can have scaffolding for that.
Dan15
Member
7 Points
5 Posts
Re: Why MVC?
Sep 21, 2012 09:58 AM|LINK
This is the approach taken by frameworks in other languages (like PHP and Ruby). They don't have autogenerated HTML, you write most of the HTML yourself. One of the most common complaints I hear about ASP.NET WebForms is the amount of ugly autogenerated code (both HTML and JavaScript). ASP.NET MVC removes a lot of the pain points of WebForms. Things like the autogenerated HTML, the complex ASP.NET page lifecycle, and ViewState are all no longer a problem with ASP.NET MVC.
In the end, if you want a set of drag and drop components that write the HTML for you, WebForms is still your best bet. It's still a supported solution, and Microsoft will definitely continue to support it (there's some improvements coming with ASP.NET 4.5). On the other hand, if you want a simpler solution where you have better control over the HTML, ASP.NET MVC is awesome. Teaching a PHP or Ruby developer how to use ASP.NET MVC is a LOT easier than teaching them how to use WebForms.
Ahmed Abdulr...
Participant
906 Points
231 Posts
Re: Why MVC?
Sep 21, 2012 10:12 AM|LINK
ok .. simply MVC is a concept of implementation that u can organize ur source code files in efficient way .. and it gives u more (software engineering staff) flexibility to use models and views with controllers .. and the best thing in MVC is reusablility of models and views..
cp.net
Member
1 Points
5 Posts
Re: Why MVC?
Sep 22, 2012 11:45 PM|LINK
That was a good answer. However, I have a better answer: I'm going to stick to Silverlight.
Designing "real" OOD-based LoB apps using the basic web stack is a distant dream. The SoC concerns addressed by ASP MVC is miniscule in comparison to frameworks like PRISM, and hopefully Microsoft stays real and continues to pursue delivery methods like Silverlight for web applications.