MVC プレビュー 4 - 指定された値に一致するルートがルート テーブルにありません
-
08-06-2019 - |
質問
次のような RedirectToRoute を通じて呼び出しているルートがあります。
return this.RedirectToRoute("Super-SuperRoute", new { year = selectedYear });
私も試してみました:
return this.RedirectToRoute("Super-SuperRoute", new { controller = "Super", action = "SuperRoute", id = "RouteTopic", year = selectedYear });
global.asax 内のルートは次のようになります。
routes.MapRoute(
"Super-SuperRoute", // Route name
"Super.mvc/SuperRoute/{year}", // URL with parameters
new { controller = "Super", action = "SuperRoute", id = "RouteTopic" } // Parameter defaults
);
では、なぜエラーが発生するのでしょうか:「指定された値と一致するルートがルート テーブルにありません。」?
selectedyear の型が var であることがわかりました。int.Parse を使用して int に変換しようとしたとき、selectedyear が実際には null であることがわかりました。これが問題の説明になります。次回はブレークポイントでの変数の値にもっと注意を払うことになると思います:)
解決
selectedyear のタイプは何ですか?日時?その場合は、文字列に変換する必要があるかもしれません。
所属していません StackOverflow