2012-09-02 3 views
0

블로그에 대한 일부 라우팅을 구현하려고합니다. 다중 매개 변수로 표시 할 URL을 원하지만 500 개의 네트워크 오류가 계속 발생하고 시작하는 것으로 보입니다. 내가 원하는 경로를 얻을 때 다른 장소에서 jquery와 이미지를 찾고 있습니다.다중 매개 변수를 추가 할 때 네트워크 500 오류가 있습니다. 다중 매개 변수를 추가 할 때

을 Heres 경로

routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); 
routes.MapRoute(
    "Events", 
    "Post/{action}/{id}/{categoryName}/{blogTitle}", 
    new { controller = "Post", action = "Detail", id = "", 
      categoryName = "", blogTitle = "" } 
); 

을 heres 컨트롤러 여기

public ActionResult Details(int id, string categoryName, string blogTitle) 
{ 
    SitePosts posts = new SitePosts(); 
    Post post = posts.GetPost(id); 

    ViewBag.IsAdmin = IsAdmin; 
    return View(post); 
} 

<a href="@Href("~/Post/Details/" + post.ID + "/" + post.Category.CategoryName + "/" + post.Title)"> 

같은 일이 내가 할 경우 적용되는 cshtml 면도기 도우미에서 내가 사용하고있는 링크입니다 리디렉션 대상 액션 RedirectToAction ("Details", "Post", new {id = uid, cate goryName = post.Category.CategoryName, blogTitle = UrlEncoder.ToFriendlyUrl (post.Title)});

난 후/세부/컨텐츠/JQuery와 등 등의 자바 스크립트와 이미지 을 찾으려고 노력에 대한 HTTP GET 많은 오류의 화면 출력을 가지고 있지만 그것은 나에게 게시물을 못하게이 일어나고 왜 아무 생각하십시오

답변

0

직접 제작하는 대신 Html ActionLink 도우미를 사용해보세요. 또한 라우팅 테이블을 조정하고 전달할 값을 생략 할 수 있습니다. 경로 구문에 그대로두면되는 구문을 사용하여 라우트에 선언 할 필요가 없습니다.

경로 테이블

routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); 
routes.MapRoute(
    "Events", 
    "Post/Detail/{id}/{categoryName}/{blogTitle}", 
    new { controller = "Post", action = "Detail" } 
); 

보기 - 링크를 생성

@Html.ActionLink("DisplayText", "Detail", new{controller="Post", id = post.ID, 
categoryName=post.Category.CategoryName, blogTitle = post.Title}) 
관련 문제