首页 新闻 会员 周边

asp.net mvc 好在哪儿?

0
悬赏园豆:20 [已关闭问题]

这个问题让我头疼,感觉asp.net mvc 文件结构太复杂,大家一起来讨论下,到底好在哪儿,是否非得将自己的web app 转到mvc 才会性能提高 才会较好呢?

志扬的主页 志扬 | 初学一级 | 园豆:107
提问于:2010-06-09 17:52
< >
分享
其他回答(7)
0

那三层架构的文件结构也比不用三层的复杂,那为什么要用三层架构呢?

不能根据文件结构的复杂度来看整个项目,而是要看它的结构分工是否明确,低耦合~

这样,开发大型项目的时候能让你思路清晰,避免很多问题。

Dozer | 园豆:30 (初学一级) | 2010-06-09 18:06
0

觉得它结果复杂是因为你太熟练webform了,对它的思想还不了解。

Astar | 园豆:40805 (高人七级) | 2010-06-09 18:18

没错,

支持(0) 反对(0) jason2013 | 园豆:1998 (小虾三级) | 2012-10-19 17:41
0

       传统的ASP.NET WebForm模式利用ViewState保存表单的状态信息,由于B/S程序本身的限制,ViewState存储数据需要在隐藏表单域里面放置很大一段字符串,这会大大增加页面的字节数,导致网页加载变慢;

       MVC只简单地处理“模板”,而无需构建复杂的控件树,因此,无论是在服务器处理的时间,和客户端的呈现速度都会有所提高;

       同时,单元测试时Webform的测试是很困难的,使用MVC,可以将业务逻辑与页面分离开,可以不在ASP.NET进程中执行控制器,方便测试。

Lebron | 园豆:240 (菜鸟二级) | 2010-06-09 18:33
0

ASP.NET 的架构好在以下几点:

         1,便于维护与扩展

         2,代码的重用性

         3,层次明确,分工也比较明确

云锋 | 园豆:270 (菜鸟二级) | 2010-06-09 21:28
0

重点是低耦合了。

3层嘛,我就把它当成是流水线作业了。

itaozi | 园豆:1055 (小虾三级) | 2010-06-09 22:35
0

告诉你吧,按我的经验,Asp.net MVC比WebForm更适合做大型正规的Web程序,理由如下:

1. 它回归了Web的本质,不严格的说其实就是Http的两种请求:Get和Post,其Form和Html控件可以自由写,一个页面上可以写多个Form,我认为这是与WebForm最重要的不同,这样做的结果就是在大的复杂页面上,可以用Ajax单独提交某一个小Form,返回结果后局部刷新一个区域,效率非常之高。而WebForm就不行了,它一个页只能出现一个大Form,假如想提交某部分数据,那么JS将让你巨郁闷,如果想简单提交这个大Form,则效率又会很低。

2. 表面上看,Asp.net MVC似乎比WebForm更复杂,其实是因为还没有看透它。有句话叫书越读越薄,其实就是你在不断研究和思考中,迷雾在一点点拨开,在某一个时间点上,你会突然拨云见日,这时候你就会觉得它其实一点都不复杂。不就是有一个路由吗,可以把Url转到一个Controller的Action方法上吗,不就是在Action里处理完之后,根据不同情况把一些数据传给适当的View,View再把它显示出来吗。That's all。

3. Lebron说的相当对,就是低耦合的东东测试起来巨方便。虽说WebForm测试时,可以把操作录下来测,但大多数程序可能更喜欢直接面对代码的吧,反正我是这样。用MVC模式,单元测试写起来非常的方便。

4. MVC的开发思路更合理一些,当你开发时,你会从输入和输出的角度来思考问题,容易走面向接口编程的路线,而WebForm容易让你先想应该用哪个控件。哪种更合理呢?你应该有自己的答案了吧。

5. MVC也有它的缺点,就是写简单程序的时候,代码要比WebForm多,你应该看过微软的各种示例视频基本就是用WebForm拖点控件,写几行代码就把问题讲明白了对吧,WebForm确实在写小玩意儿的时候代码相当少。但是对于一个大型正规网站,多人协作开发上考虑,耦合度越低,分工就能越明确,并行化程度也能越高,效率当然就越高了。

灰灰狼 | 园豆:5 (初学一级) | 2010-06-10 00:54
其实这个路由我想用的,那样url会好看很多,再就是我还想实现模版的方式,方便切换主题和样式,当然都希望把程序弄的耦合度低些啦。 谢谢啦
支持(0) 反对(0) 志扬 | 园豆:107 (初学一级) | 2010-06-12 11:43
0

mvc适合互联网项目还是企业项目,为什么?

Hi campo | 园豆:10 (初学一级) | 2010-06-10 10:12
0

1. 它回归了Web的本质,不严格的说其实就是Http的两种请求:Get和Post,其Form和Html控件可以自由写,一个页面上可以写多个Form,我认为这是与WebForm最重要的不同,这样做的结果就是在大的复杂页面上,可以用Ajax单独提交某一个小Form,返回结果后局部刷新一个区域,效率非常之高。而WebForm就不行了,它一个页只能出现一个大Form,假如想提交某部分数据,那么JS将让你巨郁闷,如果想简单提交这个大Form,则效率又会很低。

-------------------------------------------

难道Webform就不可以写多个form?

<form1 ></1form>

<form2 ></2form>

<form3 ></3form>

<form4 ></4form>

取值request.queryform[""];

pengxiaoer | 园豆:225 (菜鸟二级) | 2010-08-25 11:36
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册