2011-01-08 70 views
1

我听说像Razor或NHaml这样的Viewengines比WebForm View引擎具有更高的性能。有人可以告诉我,如果这是真的,哪些将是最好的视图引擎ASP.Net MVC - Webform查看引擎性能

+0

在最近的一次(12月份)网络会议上,Scott Hanselman表示Razor比WebForms视图引擎更快。虽然任何性能优势相对较小。 –

回答

0

不知道WebForms和MVC之间的精确性能。一直在使用webforms一段时间,我目前正在使用MVC2并尝试使用MVC3的Razor View Engine。

虽然MVC3仍然在RC2状态表现不错,但我想它还是有之前的最后一个版本.Rumours是性能应该等于MVC2以进行调整。 如果你问我,我认为MVC2和新的Razor引擎没有比Webforms应用程序慢。但个人而言,我发现代码更易于使用MVC进行维护,这对我来说是我从Webforms切换到MVC的最大原因。不了解NHaml,但亲自选择剃刀,效果很棒!它很容易使用,易于理解,并提供良好和干净的代码。

编辑:

读斯科特Guthries关于MVC3 RC2候选博客。他谈论表现。请参阅this链接。

关于性能的另一个话题已经存在。读它here

它总是interessting遵循Scott GuthriePhil Haacked的博客网页。两者都在微软工作,并定期发布关于MVC3的文章。

1

我期望WebForms视图引擎和Razor视图引擎能够产生类似的性能,因为它们是基于类似原理构建的。两者都通过解析文件(ASPX vs CSHTML)来生成一个codedom,它本身用于生成一个编译类。最大的区别在于内置于每个解析器/代码生成器中的优化。

7

如果更改视图引擎会显着影响性能,那么您的设计会出现问题。视图是为了简单显示模型中的属性 - 没有任何内容会像控制器中发生的数据库访问一样长。视图渲染的数量级提高可能不会在整个请求的时间上产生显着的差异。

MVC 3可能比MVC 2执行得更好,但这只是使用最新版本的问题,它在系统的所有部分都有所改进。查看引擎的选择是关于您的首选语法,而不是性能。