2011-11-16 1 views

답변

1

이것은

Routes.MapRoute("ViewArticle", "{slug}/{id}", 
       new { controller = "articles", action = "view", id = "", slug = "" }, 
       new { id = @"\d+" }); 

Routes.MapRoute("Default", "{controller}/{action}/{id}", 
       new { controller = "home", action = "index", id = "" }); 
2

global.asax.cs 파일의 Application_Start() 방법에서 RouteCollection.MapRoute() 방법으로 전화해야합니다.

routes.MapRoute(
       "Slug", // Route name 
       "{action}/{id}", // URL with parameters 
       new { controller = "YourControllerToCall", action = "YourAction", id = UrlParameter.Optional } // Parameter defaults 
      ); 

원하는 경로를 등록합니다 및 YourControllerToCall 컨트롤러 (분명 당신은이 경로에 매핑 원하는 컨트롤러가 넣어), 그리고 당신이 필요로하는 작업뿐만 아니라 옵션 id이 매핑합니다이 코드 (물론 원하는 경우).

+0

작동하지 않았다 나를 위해 일한 방법이다. 위의 대답은 나를 위해 일했습니다. – Roman

+0

@am 무슨 일이 있었는지, 상어 경로는 괜찮아 보입니다. 당신이 언급하지 않은 경로 제약 조건을 벗어났습니다. –

+1

@ Adam Tuliper, 나는 그의 경로를 넣었고 URL을 테스트했지만 집어 들지 않았습니다. 또한 URL에 조치가 포함되어야하므로 경로가 작동하지 않을 것으로 판단됩니다. 그러나 내 대답에는 URL에 조치가 포함될 필요가 없습니다. 기사의 문자열 (슬러그)과 ID 만 – Roman

관련 문제