2009-06-15 12 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 

     ); 

私のルートはこのようなものです。しかし、私はWebサイトのホームページを表示するときに表示されます。ホームページが表示された後何か起こり、新しい新しいクエストが行われます(私はなぜわからない)私は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ファイルにあります。 背景:transparent url( 'divider.gif') しかし、このような私のソリューションにはファイルがありません。私は友人のウェブサイトから古いCSSを使用しています –

答えて

1

ファイル/Content/Divider.gifはあなたのウェブサイトに存在しますか?

ファイルが存在せず、問題の原因であるため、ルートとして実行しようとしている可能性があります。

関連する問題