那么我可以使用设计器模式吗?我较少依赖 asp.net mvc html 助手,但并没有完全放弃它,而是选择使用纯 html(其中在设计模式下渲染应该没有问题)
这可能吗?
最佳答案
编写自己的 View 引擎
public class MyRazorViewEngine : RazorViewEngine
{
public MyRazorViewEngine()
{
base.AreaViewLocationFormats = new string[]
{
"~/Areas/{2}/Views/{1}/{0}.html",
"~/Areas/{2}/Views/Shared/{0}.html",
};
....
请参阅 System.Web.Mvc.RazorViewEngine 了解要包含的其余位置
然后在启动时注册
ViewEngines.Engines.Clear();
ViewEngines.Engines.Add(new MyRazorViewEngine()));
RazorCodeLanguage.Languages["html"] = new CSharpRazorCodeLanguage();
并将以下内容添加到您的应用程序 web.config
<system.web>
<compilation debug="true" targetFramework="4.5" >
<assemblies>
<add assembly="System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
</assemblies>
<buildProviders>
<add extension=".html" type="System.Web.WebPages.Razor.RazorBuildProvider, System.Web.WebPages.Razor"/>
</buildProviders>
</compilation>
</system.web>
优点 - 您获得设计师模式,缺点 - 您失去所有 Razor 突出显示和智能感知
关于asp.net-mvc - 我可以让 razor 将 .html 文件扩展名识别为自己的文件扩展名吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12765932/