2

「ホーム」という名前のデフォルトのコントローラーを使用しています。

次の ActionResult があります。

public ActionResult SetID(string ID)
{
    int? result = MyGateway.GetAccountByID(ID);
    Common.IDNum = result;
    return View("Index","Home");
}

IDNumber を次のように渡したいと思います。

http://localhost:3314/Home/SetID/AA3420

...そして好きではない...

http://localhost:3314/Home/SetID?ID=AA3420

上記のリンクは、リストを返すビューによって生成され始めています。レコードを選択するには、上のリンクの [選択] をクリックします。現在、「AA3420」を Common.cs という別の場所にある CS ファイルにあるセッション変数に設定しています。

URL を次のようにするにはどうすればよいhttp://localhost:3314/Home/SetID/AA3420ですか?

4

2 に答える 2

3

global.asaxApplication_Startに次のルートを登録します。

 var routes = RouteTable.Routes;

 routes.MapRoute(
            "ID Action", // Route name
            "{controller}/{action}/{id}", // URL with parameters
            new {controller = "Home", action = "SetID", ID = ""} // Parameter defaults
            );
于 2011-12-02T15:46:11.307 に答える
0

Global.asax を見てください。そこで、デフォルト ルートとデフォルト パラメータを定義します。このような:

routes.MapRoute(
    "Default", // Route name
    "{controller}/{action}/{id}", // URL with parameters
    new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
于 2011-12-02T15:47:45.427 に答える