Я работаю над приложением ASP.NET MVC. В этом приложении мне нужно динамически генерировать карту сайта, когда она запрашивается. Я знаю, как настроить маршруты в целом. Однако я не уверен, могу ли я создать маршрут для определенного файла. В настоящее время, я следующий в RouteConfig.cs:Статические файловые маршруты в ASP.NET MVC
routes.MapRoute(
name: "Sitemap",
url: "resources/sitemap.xml",
defaults: new { controller = "Site", action = "Sitemap" }
);
В моей SiteController я следующее:
public ActionResult Sitemap()
{
// I will build my sitemap.xml file here and return it.
}
Когда я вхожу /resources/sitmap.xml в адресную строку браузера, я заметил, что действие Sitemap() никогда не срабатывает. Возможно ли даже в ASP.NET MVC настроить маршрут для определенного файла? Если да, то как?
Спасибо,
Я нашел, что для маршрутизации в/sitemap для несуществующего файла sitemap.xml мне не нужно было добавлять строку 'routes.RouteExistingFiles = true;', а также установить атрибут 'HtmlFileHandler'' path к 'sitemap.xml', а не к * .xml. Не уверен, что это будет большим преимуществом, но просто подумал, что я упоминаю об этом. Спасибо за ответ, хотя, v полезно. – Ted