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 경로 설정에서 국가 및 여행 매개 변수를 추가
[경로는 ("{국가}/{여행} /")] 직접 노선에 내 컨트롤러 클래스를 통해 내가 원하는 합니다만, 각각의 자바 노선 스크립트와 CSS 파일 –
나는 즉시 도움이 필요합니다 제발 페이스 북이나 다른 사람에게 도움을 줄 수있는 사람이 있으면 어디에서나 태그를 달아주세요. –