gpt4 book ai didi

c# - 在 Razor View 中使用 Partials 的性能成本

转载 作者:太空狗 更新时间:2023-10-29 17:48:41 24 4
gpt4 key购买 nike

我喜欢在我的 Razor View 中使用部分。它使代码美观整洁。但是使用 partials 有什么显着的性能成本吗?我创建了一个简单的测试。它表明使用 partials 是很多慢。

测试.cshtml:

@{
var stopwatch = new System.Diagnostics.Stopwatch();
stopwatch.Start();
for(var i=0; i<1000; i++) {
var str = "my string #" + i;
@Html.Partial("_MyPartial",str) // replace with @str on second test
<br />
}
stopwatch.Stop();
<br />
@: Time elapsed (ms): @(stopwatch.ElapsedMilliseconds)
}

_MyPartial.cshtml:

@Model

部分执行的代码在 340 毫秒内执行,而内联 @str 代码显示为 0 或 1 毫秒。这对我来说真的很震惊,因为这意味着我应该摆脱我所有可爱的部分,至少是循环中的部分。

如果有人想证实或批评我的实验,非常欢迎。

最佳答案

  1. 确保您没有在 Debug模式下运行网站,并且 MVC 项目正在发布配置中编译。在 Debug模式下运行站点会使 MVC 跳过一堆缓存
  2. 您没有提供基准代码,因此很难确定您的结论是否合理。
  3. 您认为对 Partial 进行 1000 次调用很常见吗?似乎您正在衡量一个不现实的场景。在任何相当复杂的网站中,数据库调用的成本通常会使任何 View 代码相形见绌。
  4. 请观看此视频:http://channel9.msdn.com/Series/mvcConf/mvcConf-2-Steven-Smith-Improving-ASPNET-MVC-Application-Performance

关于c# - 在 Razor View 中使用 Partials 的性能成本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5739923/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com