请求编译并调用几次后,是否存在性能差异:
public ActionResult Index()
{
return View("~/Views/Index.cshtml");
}
和
public ActionResult Index() {
var sb = new StringBuilder();
sb.Append("<html><body>Bla bla bla bla</body></html>");
return Content(sb.ToString());
}
我觉得有一个。
Razor解析得到的编译代码是否与使用字符串构建器或完全不同相同?
答案 0 :(得分:0)
答案取决于视图中包含的内容。我使用Glimpse
来衡量呈现Index()
方法的时间,一次使用View()
,另一次使用您提供的示例HTML返回Content()
。在这两种情况下,时间大约相等 - 每个大约300到400毫秒。一旦我在视图中放了一些HTML,完成请求需要花费一些时间,比如说600到700毫秒。
总的来说,我会说使用Content()
可能会更快一些,因为返回时不会涉及Razor解析器。