9

ここで説明されているように、Visual Studio 2012 で既存の MVC4/WebAPI1 プロジェクトを MVC5/WebAPI2 にアップグレードしました。サイトは期待どおりに機能しました。次に、ここにある属性ベースのルーティングの指示に従いましたが、コントローラーの 404 が引き続き発生することを除きます。私の手順は次のとおりです。

  • config.MapHttpAttributeRoutes(); を追加します。WebApiConfig.Register で
  • config.EnsureInitialized(); を追加します。WebApiConfig.Register で
  • NuGet から AttributeRouting (ASP.NET WebAPI) を追加する
  • テスト コントローラーに Route 属性を追加する

config.EnsureInitialized() の後にブレークを入れると、テスト ルートが登録されていることがわかります。ただし、そのルートに到達しようとすると、404 が返されます。

すぐにリクエストを検査し、ルーティング テーブルがどのように一致しているかを確認する方法がある場合は?

4

2 に答える 2

13

私はほとんど同じ問題を抱えていました。そして、実用的な解決策が見つかりません。ルート デバッガーは実際には Web API 2 では機能しません。最後に、ルート属性を含む Web API 2 をデバッグする有効な方法を見つけました。

Microsoft.AspNet.WebApi.HelpPage

これは、誰かが数時間のデバッグを節約するのに役立ちます。

于 2014-03-03T12:21:52.243 に答える