ASP.NET MVC 3は、URLルーティングにより複数のパラメータを伝達する方法

1264 ワード

Globalでasaxファイルでは、デフォルトのルーティングは次のとおりです.
routes.MapRoute("Default",//ルーティング名"{controller}/{action}/{id}",//パラメータ付きURL new{controller="Home",action="Index",id=UrlParameter.Optional}//パラメータデフォルト);
方法1:
Url伝参はGetによって行われ,一般に我々は一定の規則的なUrlによって伝参する.例えば下記URLです.
http://localhost/contorller/action/id?Params1=a&Params2=b
注意:URLの「?」外せません.
次のように、controllerでメソッドをバインドすることで取得できます.
public ActionResult Index(ExpModel model, string id string Params1 , string Params2)
{
  ViewBag.id = id;
  ViewBag.P1 = Params1;
  ViewBag.P2= Params2;
  return View();
}

方法2:
MVC 3のルーティングルールの変更
Globalでasax.csでは、ルーティングルールを変更します.
routes.MapRoute(
  "Default1", //     
  "{controller}/{action}/{id}/{Parma1}/{Parma2}", //       URL   
  new { controller = "Home", action = "Index", id = UrlParameter.Optional, Parma1 = UrlParameter.Optional, Parma2 = UrlParameter.Optional} //
);

アクセスするURLなど:http://localhost/contorller/action/id/a/b
取得は上記の方法と同じです.
 
転載先:https://www.cnblogs.com/onmywaying/p/4816645.html