- 拡張子「.mvc」をASP.Netにマップする設定をIISのアプリケーションマップに追加するために、スクリプト「C:\Program Files\Microsoft ASP.NET\ASP.NET MVC 1.0\Scripts\registermvc.wsf」を実行する。 ASP.Net MVC 2の場合はregistermvc.wsfがないので、下記のように手動で登録する。
Webサイトのプロパティ->ホームディレクトリ->構成からアプリケーションの構成を開き、追加ボタンで「アプリケーションの拡張しマッピングの追加/編集を開く。
実行可能ファイル:c:\windows\microsoft.net\framework\v4.0.30319\aspnet_isapi.dll
拡張子:.mvc
動詞:制限 GET,HEAD,POST
スクリプトエンジン:チェック
ファイルの存在を確認する:チェックなし
に設定し、「OK」ボタンをクリックする。 - アプリケーションの「Global.aspx」のMapRouteを変更して、「.mvc」の拡張子をコントローラ名に追加して、「{controller}.mvc/{action}/{id}」のようにする。また、あらたにRootに対するマップを追加して、ルートUrlのアクセスを/Home/Indexにマップする。変更後のコードは下記。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Routing;namespace MvcApplication1
{public class MvcApplication : System.Web.HttpApplication
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");routes.MapRoute(
"Default",
"{controller}.mvc/{action}/{id}",
new { action = "Index", id = "" }
);routes.MapRoute(
"Root",
"",
new { controller = "Home", action = "Index", id = "" }
);}
protected void Application_Start()
{
RegisterRoutes(RouteTable.Routes);
}
}
}
Last 5 posts in .Net Framework
- 同一サーバーへの同時接続数を構成ファイルで設定するには - May 23rd, 2012
- VSTO セットアッププログラムからインストールしたAddinのApp.configが読み込まれない場合 - May 7th, 2012
- CanExecuteのTrue,Falseを変更してもコマンド実行の可否がGUIに反映されない場合には - April 12th, 2011