Migrating from WebForms to MVC - Themes issue with common Master pages
我正在从 WebForms 应用程序迁移到 MVC 应用程序。由于这需要随着时间的推移完成,WebForms 和 MVC 将与 MVC 中的所有新页面并存,并且随着时间的推移,我们将慢慢地将现有页面转换为 MVC。
我想继续在 WebForms 和 MVC 中使用现有的 WebForms 母版页(因此我使用 ASPX 视图引擎,因为它允许我指定 .master 页)。我正在使用的母版页不使用 ViewState 或 PostBacks,因此将它与 MVC 一起使用应该没有问题。
问题是 CSS 当前来自 App_Themes。今天的 WebForms 应用程序中使用了 3 个不同的主题。对于 WebForms 页面,Page.Theme 在 PageBase 类中设置(继承自 System.Web.UI.Page)。由于 MVC 不使用该机制(Page 类),如何设置主题以便 css 在母版页中正确呈现?
提前致谢
您可以使用嵌套母版页并将您的主题应用于嵌套页面中的 MVC 部分。
嵌套页面将只有一个占位符来填补基本母版中的空白。
之后,让所有 MVC 视图从嵌套页面中获取。这将确保不会影响 Web 表单,并且仍将应用于您的所有 MVC 页面。
(注意:由于 MVC 对主题一无所知,因此您需要手动添加对 css 文件的引用)