IIS6 と IIS7 の両方にデプロイできるようにしたい ASP.NET MVC アプリケーションがあります。ご存知のように、IIS6 では URL に「.mvc」という名前が必要です。
このコードは、すべての IIS バージョンで確実に機能しますか? さまざまな IIS バージョンのコード、global.asax、または構成ファイルを特別に調整する必要はありません。
bool usingIntegratedPipeline = HttpRuntime.UsingIntegratedPipeline;
routes.MapRoute(
"Default",
usingIntegratedPipeline ?
"{controller}/{action}/{id}" : "{controller}.mvc/{action}/{id}",
new { controller = "Home", action = "Index", id = "" }
);
更新:言及するのを忘れていました。ISAPI はありません。ホストされた Web サイトであり、IIS サーバーを制御できません。