2009-06-15 4 views
1
routes .Add ("Detail", 
       new Route ("{maincategory}/{category}", 
          new RouteValueDictionary (new { controller = "Category", action = "Detail"}), 
          new RouteValueDictionary (new { category = new FromValuesListConstraint ("")}), 
          new MyRouteHandler())); 

     routes.Add("Category", 
       new Route("{category}", 
          new RouteValueDictionary(new { controller = "Category", action = "Index", category = "" }), 
          new RouteValueDictionary(new { category = new FromValuesListConstraint("") }), 
          new MyRouteHandler())); 

     routes.MapRoute(
      "Default",            // Route name 
      "{controller}/{action}/{id}",       // URL with parameters 
      new { controller = "Home", action = "Index", id = "" } // Parameter defaults 

     ); 

내 경로는 다음과 같습니다. 그러나 웹 사이트 홈페이지를 실행하면 홈 페이지가 표시됩니다. 홈 페이지가 표시되고 새로운 새로운 퀘스트가 만들어집니다 (이유를 모르겠습니다). MvcRouteHandler를 재정의하고 중단 점을 배치합니다.Asp.Net Mvc RouteData가 잘못된 매개 변수로 채워짐

public class MyRouteHandler : MvcRouteHandler 
{ 
    protected override IHttpHandler GetHttpHandler(RequestContext requestContext) 
    { 
     var url = HttpContext.Current.Request.RawUrl; 
     var route = requestContext.RouteData; 
     return new MvcHandler(requestContext); 
    } 
} 

url 변수는 /Content/Divider.gif입니다. 따라서 홈 페이지가 표시된 후에 응용 프로그램에서 오류가 발생합니다. 나는 초심자 mvc 사용자로서 문제를 이해하려고 모든 것을 시도했다. 그러나 나는 아무것도 찾을 수 없었다.

감사합니다.

+0

"Divider.gif"라는 용어에 대한 솔루션 검색을 통해 어디에서 사용하고 있는지 확인할 수 있습니까? 마스터 페이지에 있습니까? –

+0

divider.gif가 CSS 파일입니다. background : transparent url ('divider.gif') 하지만 내 솔루션에는 이와 같은 파일이 없습니다. 내 친구 웹 사이트에서 오래된 CSS를 사용하고 있습니다. –

답변

1

웹 사이트에 /Content/Divider.gif 파일이 있습니까?

파일이 존재하지 않고 문제의 원인이므로 경로로 실행하려고 할 가능성이 큽니다.