2011-12-02 1 views
2

"홈"이라는 기본 컨트롤러를 사용하고 있습니다.ActionResult의 MVC 문자열

I 다음 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? Global.asax에 위해 Application_Start에서 다음 경로를 등록하여

답변

3

: 당신의 Global.asax에서

var routes = RouteTable.Routes; 

routes.MapRoute(
      "ID Action", // Route name 
      "{controller}/{action}/{id}", // URL with parameters 
      new {controller = "Home", action = "SetID", ID = ""} // Parameter defaults 
      ); 
+0

대단히 감사합니다, BobTodd. 그것은 트릭을했다. 나는 Route와 함께해야 할 일이 있다는 것을 알았지 만, 올바르게 수행하는 방법을 모르고있었습니다. 지금은 이해. 당신 덕분에 많이 감사합니다. – Turp

0

봐. 여기서 기본 경로와 기본 매개 변수를 정의합니다. 마찬가지로 :

routes.MapRoute(
    "Default", // Route name 
    "{controller}/{action}/{id}", // URL with parameters 
    new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults 
); 
관련 문제