2013-09-27 16 views
14

これまで私はマイクロソフトのScott Hanselmanと考えていたコードをいくつか使用しました。しかし、今私はMVC5を使用していると私はそのコードはもう有効ではないと思う。 Glimpseを見てみましょうASPでルートをデバッグする方法はありますか? MVC5?

HTTP Error 404.0 - Not Found 
The resource you are looking for has been removed, had its name changed, or is temporarily unavailable. 

答えて

3

があるが、私のようなメッセージが表示され、なぜ私が知ることができるように、私はMVC5で撮影したルートをトレースすることができる方法です。モジュールにはRoutesモジュールがあり、チェックされたルート、渡された値、一致するルート(もしあれば)の詳細を表示できます。

+4

これが私のルートはいくつかのコントローラで一致した場合には良いですが、どのようにすることができます404エラーが発生するルートをデバッグしますか? –

+0

@AdrianGrigoreが私が加えた答えをチェックしてください、それは404エラーであなたを助けるかもしれません。 – c0y0teX

+0

Glimpseはルーティングがうまくいかず、その理由を突き止めようとすると本当に役に立ちません。 –

12

私はそれがOPに遅れていることは知っていますが、404エラーをデバッグしようとしている人は、経路の結果を傍受してリソースを見つけることができない理由を見つけました。このようなGlobal.asax.csオーバーライドinitの中

public override void Init() 
    { 
     base.Init(); 
     this.AcquireRequestState += showRouteValues; 
    } 

    protected void showRouteValues(object sender, EventArgs e) 
    { 
     var context = HttpContext.Current; 
     if (context == null) 
      return; 
     var routeData = RouteTable.Routes.GetRouteData(new HttpContextWrapper(context)); 
    } 

それが解釈されているとして、経路情報を保持するrouteData変数。私はこれをMVC5でテストしました。私はもともとポール・エヴァンスによって別の答えに、この方法にぶつかった

、これはリンク(おかげで、それを見つけるため@porcusする)である:stackoverflow.com/a/25466524

+2

ここから、そのコードスニペットを入手した可能性のある他の回答へのリンクがあります:http://stackoverflow.com/a/25466524 私は帰属を提供することをお勧めします。 – porcus

+0

@ porcusそれは本当に元の答えです、私はそれにリンクする私の答えを更新します、ありがとう。 – c0y0teX

関連する問題