ASP.NET MVC在某些方面是倒退吗?

joh*_*nny 8 asp.net asp.net-mvc

我问这不要开始任何消极的事情.相反,在看了ASP.NET MVC之后,我发现它(不是)我没有使用像webforms这样的控件,而是用手编写html标记(喘气).

这是倒退吗?我记得从经典的asp到asp.net和拖放控件,创建一个bll等等.现在看起来我手工做的一切,再次像经典一样,除了我有很好的mvc设计.

我想我想弄清楚为什么这是一个从快速发展环境转变为看似更乏味的转变.

编辑:

我一直认为Visual Studio .NET是使用ASP.NET及其所有控件和自动化的一个重要原因.现在有了MVC,它让我觉得它就像任何其他具有体面IDE的MVC一样,因为我现在手工做所有事情.

Gal*_*boy 19

  • "经典"ASP.NET并没有消失 - 如果你想要或者需要它,你仍然可以使用它
  • 虽然您可能会或可能不会获得"拖放"功能,但在AutoComplete和各种渲染助手之间,您可以在几分钟内轻松获得工作视图
  • 创建视图只是整个项目的一小部分
  • 即使在ASP.NET中,我也很少使用可视化编辑器.我一直觉得它妨碍了我,错误地为我做出了决定.

  • 最后一个订单项+1.如果我在设计师中修改它,那么我创建的任何页面都超出了设计师所设置的那些页面,通常会被严重毁容. (2认同)

And*_*cci 15

向前迈出一步:

  1. 代码是完全可测试的
  2. 您可以完全控制服务器生成的内容
  3. 没有更多的观点!
  4. 提高服务器响应速度
  5. 没有WebForm的Page lifecicle,减少了服务器cpu负载
  6. 一种更接近网络的编程模型(webforms旨在将桌面编程模型带入网络).
  7. ....


Mik*_*son 7

有趣的是你应该提到这一点 - 我刚读完" Professional ASP.NET MVC 1.0 "中的一章回答了这个问题.

他们比较了Web Forms和MVC之间的区别,作为领导管弦乐队和创作歌曲之间的区别.MVC不会像Web表单那样为您提供相同级别的即时响应,但它确实为您提供了许多Web开发人员所期望的粒度级别.众所周知,ASP.NET控件即使在更高版本中也会注入更多的HTML.

所以,从功能上说它是退后一步,但这只是因为你已经完全控制了页面上的内容.一如既往,为工作挑选合适的语言.


Dan*_*ker 5

这是一个侧面,而不是向前或向后; 只是另一种做同样事情的方式,有不同的侧重点.使用ASP.NET表单,可以很容易地"绘制"页面,使其看起来大致与您希望它看起来一样,但很难使其表现得像一个合适的Web应用程序.使用ASP.NET MVC,将它的外观拼凑起来并不容易,但实际上它更像是一个网站,其URL用于描述以可预测的方式返回的内容.