带文件扩展名的MVC5属性路由

时间:2014-01-19 12:42:32

标签: c# asp.net-mvc asp.net-mvc-routing asp.net-mvc-5

基本上我正在尝试使用新的MVC5路由属性将/sitemap.xml重定向到一个方法,因为我需要动态创建它。

// GET: /sitemap.xml
[Route("sitemap.xml")]
public ActionResult SiteMap()
{
    // Stuff
}

目前无法正常工作,可以这样做,还是像以前一样使用路由表?

routes.MapRoute(
   name: "Site Map",
   url: "sitemap.xml",
   defaults: new { controller = "Default", action = "SiteMap" });

1 个答案:

答案 0 :(得分:2)

将此添加到您的web.config:

 <system.webServer>
 <handlers>
      <add name="ManagedDllExtension" path="*.xml" verb="GET" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
    </handlers>
</system.webServer>