Razor vs Webforms查看新ASP.NET MVC 3站点的引擎

时间:2011-03-10 14:32:32

标签: asp.net-mvc asp.net-mvc-3 razor viewengine

Razor更漂亮(而且很酷)。

Webforms是我已经熟悉的东西。

当然,我毫无疑问会去学习新东西 - 剃刀。但我听说有两个让我担心的缺点:

  • 无法轻松重复使用现有的网络表单控件 - 在极少数情况下,我可能需要拖动某些内容...我会重申 - “RARE”
  • 我听说渲染效率较低(比网络表单花费的时间更长)

使用ASP.NET MVC 3时,Razor相对于Webforms视图引擎有什么优势?

4 个答案:

答案 0 :(得分:6)

以下问题已经解决了这个问题:Does Razor syntax provide a compelling advantage in UI markup?

答案 1 :(得分:2)

Web表单控件在Asp.Net Mvc中已经不是很有用了。由于MVC没有ViewState / Postback机制,因此大多数控件都需要使用它。 (网站形式:0分,剃刀0分)

@Razor中的语法更漂亮。 (网站形式:0分,剃刀1分)

不了解性能。我认为(一次)解析和渲染是整个流水线的一小步,这应该不重要。未来的更新可能会改变。 (网站形式:0分,剃刀0分)

答案 2 :(得分:0)

您可能希望澄清您正在谈论的技术。在ASP.Net中,WebForms是一个像ASP.Net一样的Web框架MVC是一个Web框架。 Razor视图引擎是一个新的视图引擎,它是ASP.Net MVC Web框架应用程序中默认视图引擎的不同选项。

Razor视图引擎的主要好处是它可以更轻松地在MVC视图上编写动态内容,因为您不必使用< %%>像使用默认视图引擎一样格式化。还有其他好处,Scott Gu有一个关于他们的好博客here

答案 3 :(得分:-1)

学习曲线可能是一个婊子,但挂在那里。代码不只是“更漂亮”,它更清晰,让你以模块化的方式工作,你可以注入html部分,让你重用代码,就像面向对象的代码,但只使用HTML。

这个更干净的代码意味着500条独特的线条现在只有20条!至于视图状态,你仍然可以使用隐藏字段,一旦你学会了没有编码,它就不会错过。

VS2013现在有一个带F#的MVC Razor示例项目,可以让您快速上手。

使用F#的Razor中使用500行代码的同一项目需要5000行或更多行的C#和Webform代码。

我建议你在一个16岁的实习生接受你的工作之前学习这项新技术;-)