我正在使用 ASP.Net MVC4.0、JQuery Mobile、HTML5 开发移动应用程序。由于我是 ASP.Net MVC 的新手,我不确定是使用 Razor(.cshtml) 还是 webForm(.aspx) 视图引擎。
谁能建议我可以使用哪个视图引擎来开发移动应用程序?性能方面哪个更好,剃刀视图引擎还是 webform 视图引擎?
我正在使用 ASP.Net MVC4.0、JQuery Mobile、HTML5 开发移动应用程序。由于我是 ASP.Net MVC 的新手,我不确定是使用 Razor(.cshtml) 还是 webForm(.aspx) 视图引擎。
谁能建议我可以使用哪个视图引擎来开发移动应用程序?性能方面哪个更好,剃刀视图引擎还是 webform 视图引擎?
我不认为有性能方面。
但是,我发现 Razor 语法非常简洁。使用 Razor 时 HTML 更加突出,这是您在开发 HTML 视图时想要的。
在各种 MVC 框架中,视图开发鼓励并要求直接与标记一起编写代码。由于 ASPX 视图引擎的设计并未考虑到这一目标,因此 ASP.NET 团队决定使用以代码为中心的模板方法构建一个全新的视图引擎。结果是一个更智能的解析引擎能够非常容易地找出代码停止的位置和标记的开始位置,而无需开发人员非常明确。
甚至还有开源视图引擎,您可能想看看。例如,火花视图引擎。
Razor 是 MVC 的首选视图引擎,ASPX 视图引擎是旧版视图引擎,此选项用于向后兼容。在这里,您会找到一篇很棒的文章,解释了两者之间的区别。
首先列出了 ASPX 引擎。我们正在扩展的站点仅使用 Razor 视图。在尝试扩大数量请求时,仅在剃刀引擎之前使用 ASPX 引擎会导致发生大量争用。这样做:
ViewEngines.Engines.Clear();
//Add Razor Engine
ViewEngines.Engines.Add(new RazorViewEngine());
鉴于每个页面访问不再寻找 aspx、ascx 文件的存在,在启动时产生了巨大的差异。虽然它似乎不会影响单个请求的性能,但当您扩大规模并看到争用和 CPU 百分比上升时,这是应该检查的。