我有一个ASP.NET Core 2.0 MVC应用程序,使用存储在/ Pages文件夹下的项目树中的Razor页面。
使用默认路由等设置项目。
我希望所有Razor页面在浏览器的地址栏中都有.html扩展名。
文件/Pages/test.cshtml目前可通过http://localhost/test获取。我希望通过http://localhost/test.html提供此页面。
我尝试了解路由设置,但未能充分了解解决方案。
我应该写什么,以便通过.html后缀提供文件?
答案 0 :(得分:3)
为此定义了一条路线,如下所示:
routes.MapRoute(
"MyHtml",
"{controller}/{action}.html",
new { controller = "Home", action = "Index" });
并将HtmlFileHandler
添加到web.config。并且.html
路线现在可以使用。
<handlers>
<add name="HtmlFileHandler" path="*.html" verb="GET" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
</handlers>