私はルートを持っています:
routes.MapRoute("ResetPasswordConfirm", "reset-password-confirm", new { controller = "Membership", action = "ResetPasswordConfirm" });
とコード
public ActionResult ResetPasswordConfirm(int userid, string key)
{
// ...
}
私のアプリケーションで。だから私はこのように実行されるURLを持っています:
http://localhost/reset-password-confirm?userid=1&key=bla_bla_something
誰かが行くことを決定するまで、それは絶対に大丈夫です
http://localhost/reset-password-confirm
...そして何が起こるか見てください。ASP.NETは予測可能なエラーを生成します:
パラメータディクショナリには、null許容型ではないタイプ「System.Int32」のパラメータ「userid」のnullエントリが含まれています。
これは、検索ロボットがすべての可能なURLを取得しようとすることによっても実行できます。大丈夫ですが、実際のアプリケーションの使用中に多くのエラーが発生します。私はそれを避けたいのですが、そのような種類のエラーのすべての可能なケースに対してスタブを書くことに不快感を覚えます。
それを行うためのエレガントな方法はありますか?ありがとう。