c# - ASP MVC 编译时包含部分 View

标签 c# asp.net-mvc partial-views

我有两个不同的 View ,每个 View 对一个公共(public)部分 View 进行超过 500 次局部 View 调用。良好的设计告诉我,我应该将部分 View 保留在原处,并从两个重叠的 View 中引用它,以防止代码重复。不幸的是,性能受到影响 - 将部分 View 复制粘贴到其他两个 View 中会产生 300 毫秒的改进。

无论如何,我是否可以在覆盖 View 中包含部分 View ,获得不使用实际 Partial() 调用的性能优势,同时不必维护重复的代码?注意 - 我意识到我可以编写某种可以复制粘贴 View 代码的 VS 插件,但我正在寻找其他选项...

最佳答案

可以尝试的可以提高性能的方法:

  • 使用 @{Html.RenderPartial("_foo");} 而不是 @Html.Partial("_foo") 来包含部分内容
  • 始终在 Release模式下进行基准测试。与 Debug模式相比,ASP.NET MVC 执行了许多优化和缓存。

如果前 2 个建议未产生所需的性能,那么您可以尝试使用将生成 HTML 片段的自定义 HTML 帮助器替换部分内容。如果部分的 HTML 不是很复杂,这可能会起作用。

关于c# - ASP MVC 编译时包含部分 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8920250/

相关文章:

c# - 如何使用 EF+Web API 处理深层对象?

c# - 无法将 nuget 包安装到 azure 函数中

asp.net - 使我的 Controller 数据库调用异步或不异步

asp.net-mvc - 谷歌日历无法读取 ICalendar。

jquery - Ajax 发布到 Controller 操作跨域

javascript - 部分 View 中的 MVC Ajax.BeginForm 在父 View 上执行函数更新父 View

c# - 服务器端渲染。 Web API 和 Angular 2

c# - Windows 窗体中的多级组合框

javascript - MVC 3 和 PartialViews,脚本不可见?

ruby-on-rails - Ruby on Rails - 具有部分 View 的实例变量的范围