如何为某些控制器使用某些视图引擎?
现在我的项目使用 MVC2 + Spark 视图引擎。我想迁移到 Razor 视图引擎。项目这么大,我想一步一步做。
如何为某些控制器使用某些视图引擎?
现在我的项目使用 MVC2 + Spark 视图引擎。我想迁移到 Razor 视图引擎。项目这么大,我想一步一步做。
完全可以同时运行两个视图引擎。由于您当前使用的是 Spark,因此您的 global.asax 中可能有一个条目,用于清除当前视图引擎并添加到 Spark 引擎中。就像是:
ViewEngines.Engines.Clear();
ViewEngines.Engines.Add(new ...);
MVC 被设计为使用 FindView 和 FindPartial(ViewEngine 接口的一部分)来为一个动作找到正确的视图,如果它无法为列表中的第一个视图引擎找到一个,它会移动到下一个视图引擎并查找为其适当的视图,直到没有任何其他视图引擎可以尝试。
它是先查找 Razor 视图然后返回到 Spark,还是相反,这取决于您,因此请确保按正确的顺序放置视图引擎。或者要使用默认引擎,您可以删除 ViewEngines.EnginesClear() 行并首先使用 ViewEngines.Engines.Insert(0, ...) 创建 Spark
如果不清楚,请在 Spark 位周围粘贴 global.asax 代码,我可以尝试为您提供更多帮助。