バインダーで検証を行っているのですが、戻り値を確認する必要があるのではないかと思います。以下のオプション1では、ケース1とケース2に違いがありますか?TryUpdateModelがtrueを返す可能性はないようですが、ModelState.IsValidはfalseです。
オプション1:
if (TryUpdateModel(editItem, new string[] { "Field" }))
{
if (ModelState.IsValid)
{
} else {
// Invalid model case 1
}
} else {
// Invalid model case 2
}
オプション2:
TryUpdateModel(editItem, new string[] { "Field" }))
if (ModelState.IsValid)
{
} else {
// only one invalid model case
}