在MVC4中选择View引擎?

时间:2013-03-19 13:54:15

标签: asp.net-mvc-4 spark-view-engine viewengine razor-2 webforms-view-engine

我正在使用ASP.Net MVC4.0,JQuery Mobile,HTML5开发移动应用程序。 由于我是ASP.Net MVC的新手,我不确定是否使用Razor(.cshtml)或webForm(.aspx)视图引擎。

有人可以建议我可以使用哪种视图引擎来开发移动应用程序吗? 性能明智哪个更好,剃刀视图引擎或webform视图引擎?

3 个答案:

答案 0 :(得分:4)

我认为没有性能方面。

然而,我发现Razor语法非常简洁。使用Razor时,HTML更加突出,这是您在开发HTML视图时所需要的。

  

在各种MVC框架中,视图开发鼓励和要求   直接与标记一起编写的代码。因为ASPX视图引擎   ASP.NET团队决定不是为了这个目标而设计的   使用以代码为中心的模板构建一个全新的视图引擎   做法。结果是一个更智能的解析引擎   能够非常轻松地找出代码停止的位置和标记的位置   开始,没有开发人员需要非常明确。

甚至还有开源视图引擎,您可能需要查看它们。例如,Spark View Engine

答案 1 :(得分:1)

Razor是MVC的首选视图引擎,ASPX View Engine是传统的View引擎,此选项可用于向后兼容。 Here你会找到一篇很好的文章解释两者之间的差异。

答案 2 :(得分:0)

首先列出ASPX引擎。我们正在进行扩展的网站仅使用Razor视图。在剃刀引擎之前使用ASPX引擎在尝试扩大数量请求时会导致大量争用。这样做:

ViewEngines.Engines.Clear();
//Add Razor Engine
ViewEngines.Engines.Add(new RazorViewEngine());
由于每个页面访问不再寻找aspx,ascx文件的存在,因此在启动时发生了巨大的差异。虽然它可能不会影响单个请求的性能,但随着您向上扩展并查看争用和CPU百分比上升,这是应该检查的内容。