У меня есть ASP.NET MVC-приложение, которое я хочу развернуть как на IIS6, так и на IIS7, и, как мы все знаем, IIS6 нуждается в имени .mvc в URL.
Будет ли этот код работать, чтобы он работал на всех версиях IIS? Без необходимости вносить специальные изменения в код, global.asax или config-файлы для разных IIS-версий.
bool usingIntegratedPipeline = HttpRuntime.UsingIntegratedPipeline;
routes.MapRoute(
"Default",
usingIntegratedPipeline ?
"{controller}/{action}/{id}" : "{controller}.mvc/{action}/{id}",
new { controller = "Home", action = "Index", id = "" }
);
Обновление : Забыл упомянуть. Нет ISAPI. Размещенный веб-сайт, без контроля над IIS-сервером.