ASP.NET MVC のカスタム ModelBinder で、既定値を持つパラメーターにバインドしているかどうかを確認するにはどうすればよいですか?
デフォルト値:
public void Show(Ship ship = null)
{
// ...
}
デフォルト値なし:
public void Show(Ship ship)
{
// ...
}
モデルバインダー:
public class ModelBinder : DefaultModelBinder
{
public override object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
{
var modelType = bindingContext.ModelType;
// Is it an item from the database?
if (typeof(IDbObject).IsAssignableFrom(modelType))
{
// Get from database...
var result = BindValue();
if (result == null && NotOptional()) // Code for NotOptional needed
throw new Exception();
return result;
}
}
}
ユーザーがアクションへのリクエストを行い、必要なすべての情報を提供しない場合にエラーメッセージを表示したいので、これを知りたいです(デフォルト値を持たないすべてのパラメーターになります)。