2013-01-18 2 views
0

좋습니다. 여기 거래가 있습니다. 인수로 전달 된 ID와MVC .NET 4 MapRoute + ActionLink 또는 RouteLink 문제

../Hotel?id=1 

: 나는 날의 형태로 링크를 생성 할 수 있도록 코드를 생성하기 위해 노력하고있어 "인덱스"라고 전망과 함께 "호텔"라는 컨트롤러를 가지고있다. 이렇게하려면, 내가 해봤 사용하여지도 노선 : ActionLink과 함께

@Html.RouteCollection.MapRoute("Hotel", "../{controller}/{id}", new { controller = "hotel" }); 

:

@Html.ActionLink("More >>>", "", "Hotel", new { id = item.HotelId }, null) 

그러나 결과 링크는 다음과 같이 진행됩니다

위치를 수정 리드
Hotel/Index/1 

, 그러나 나의 웹 사이트에 모든 연결의 시각적 인 견실함을 점화한다. RouteLink도 시도했지만 성공하지 못했습니다.

미리 감사드립니다.

답변

0

모두 하시겠습니까? 응용 프로그램의 링크는 "id"매개 변수에 대한 표준 쿼리 문자열 형식을 사용합니까? 그렇다면 "Default"경로의 url 및 defaults 객체에서 {id}를 제거하면됩니다.

"호텔"컨트롤러로 제한하려면 맞춤 경로가있는 올바른 길을 따라 가야합니다. 상관 그런 다음 쿼리 문자열에 추가해야합니다에서 통과 PARAMS

routes.MapRoute(
      "HotelRoute", // Route name 
      "Hotel/{action}/", // URL with parameters 
      new { controller="Hotel", action = "Index" } // Parameter defaults 
     ); 

: 첫째, 사용자 정의 경로 기본 경로 정의 전에 두 번째, 같은 컨트롤러/액션 이상 아무것도 그것을 정의되어 있는지 확인 이름/값 쌍으로

+0

기본 경로 변경이 우수했습니다. 감사합니다. –