【发布时间】:2013-09-05 02:22:46
【问题描述】:
我正在尝试使用ASP.NET WebPages 来了解使用静态 .html 文件(其中大约 500 个)的现有网站。不幸的是,我的 SEO 人员要求网站维护其现有的目录/文件名,所以我需要使用 .html。
找到this example后,我尝试在compilation/buildProviders/下的web.config中添加扩展为:
<add extension=".html" type="System.Web.WebPages.Razor.RazorBuildProvider"/>
并添加一个程序集:
<add assembly="System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
这仍然不会呈现页面。它只是作为源输出。我还在项目的根目录下创建了一个Global.asax 并将其添加到Application_Start() 下:
System.Web.Razor.RazorCodeLanguage.Languages.Add(
"html", new System.Web.Razor.CSharpRazorCodeLanguage());
System.Web.WebPages.WebPageHttpHandler.RegisterExtension("html");
仍然没有效果。不幸的是,我在 Google 上画了一个空白。
【问题讨论】:
-
您是说要将 *.html 请求映射到 .cshtml 文件,还是尝试将 Razor 代码添加到现有 .html 文件并希望它们由 ASP.NET 处理?跨度>
-
我想
.html文件自动被 Razor 解析。默认情况下,此操作对 .cshtml 文件执行。我正在寻找的 90% 是@Layout和@RenderPage(用于包括其他页面)。