【发布时间】:2011-07-28 14:03:33
【问题描述】:
我正在努力将应用程序从 MVC2 ASPX 移动到 MVC3 Razor,并且在为旧 MVC2 应用程序中的更多 MasterPages 移动基类时非常困难。
该基类用于在页面上自动包含 css 和 js,以便在本地环境中开发应用程序时简化快速修复和调试,但在生产环境中运行应用程序时,它必须更新并包含交付的单个最小化 css 和 js 文件来自外部 CDN。
代码需要了解视图文件,例如。 “~/views/home/index.chtml”和/或布局文件,例如。 "~/Views/DefaultNoLogon.Master" 以便正确包含和处理 css 和 js 文件。
我尝试使用 web.config 的 Razor 部分中的 pageBaseType 实现自己的基类,但它似乎是为视图和布局文件执行的,我找不到一个执行点,其中包含有关视图和布局文件的信息存在。我也尝试使用 HtmlHelper 实现文件逻辑,但我只能访问有关 View 文件的信息,并错过 View 的 Layout 文件的信息。
我不希望这种代码在 Route、Controller 或 ViewModel 中实现,因为它应该与 View 的生成直接相关。
任何想法如何在 MVC3 Razor 应用程序中获取有关视图和布局文件的信息?
【问题讨论】:
标签: c# layout asp.net-mvc-3 view