2017-02-11 8 views
0

이 동적 라우팅 기능을 가리키는mvc5 동적 라우팅 및 Html.ActionLink가 작동이

public class CategoryRouteConstraint : IRouteConstraint 
{ 
    public bool Match(HttpContextBase httpContext, Route route, string parameterName, RouteValueDictionary values, RouteDirection routeDirection) 
    { 
     //these would usually come from a database, or cache. 
     FlyingCarpetMVC.Models.MyDbContext db = new FlyingCarpetMVC.Models.MyDbContext(); 
     var categories = db.Country_name.Select(x => new {x.English_name,x.Spanish_name}).ToList(); 

     if (values[parameterName] == null) 
      return false; 

     //get the category passed in to the route 
     var category = values[parameterName].ToString(); 
     category = category.Replace("-", " "); 
     category = category.Replace("_", " "); 
     //now we check our categories, and see if it exists 
     bool Exist = categories.Any(x => x.English_name.Contains(category) || x.Spanish_name.Contains(category)); 
     return Exist; 
     // url such as /restaurants/Camberley--Surrey will match 
     // url such as /pubs/Camberley--Surrey will not 
    } 
} 

routes.MapRoute(
      name: "CategoryRoute", 
      url: "{category}/{location}", 
      defaults: new { controller = "Home", action = "kind", Country = UrlParameter.Optional,trip=UrlParameter.Optional }, 
      constraints: new { category = new CategoryRouteConstraint() } 
      ); 

나는 하이퍼 LINKE 내가

처럼 할 때 "/ 종류/여행"

처럼 원하는 좋은

@Html.ActionLink(MyThisTripName,"kind", new {Kind=CountryNam,Trip= MyThisTripName },null) 

이 나에게

href가 같은 URL을 준다 = "/ 홈/종류? 나라 = Egypt_Holiday & 여행 = Classical_Tours는 Egypt_Holiday/Classical_Tours "

당신의 URL 경로 설정에서 국가 및 여행 매개 변수를 추가

답변

0

시도를 제발 도와주세요"

나는

HREF = 원하는 ". 내가 퍼트

routes.MapRoute(
      name: "CategoryRoute", 
      url: "{category}/{location}/{Country}/{Url}", 
      defaults: new { controller = "Home", action = "kind", Country = UrlParameter.Optional,trip=UrlParameter.Optional }, 
      constraints: new { category = new CategoryRouteConstraint() } 
      ); 
+0

[경로는 ("{국가}/{여행} /")] 직접 노선에 내 컨트롤러 클래스를 통해 내가 원하는 합니다만, 각각의 자바 노선 스크립트와 CSS 파일 –

+0

나는 즉시 도움이 필요합니다 제발 페이스 북이나 다른 사람에게 도움을 줄 수있는 사람이 있으면 어디에서나 태그를 달아주세요. –