我有一个ViewModel
类型的List
包含子属性。
我想在ViewModel
发布后验证列表的第一项,然后使用以下方式成功:
ModelState.Clear();
await TryUpdateModelAsync(vm.FirstItem);
TryValidateModel(vm.FirstItem);
if (!ModelState.IsValid)
{
return View("Index", vm);
}
那是什么问题?
因为我手动更新了模型以对其进行验证,所以第一个模型中属性的键与第二个模型中属性的键不同:
在第二个模型中:
Amount
在第一个模型中:
FirstItem.Amount
这种情况的结果是相关的错误将显示在视图的 validation-summary 中,但不会显示在该字段的错误范围中视图。
然后,我想将ModelState键中的 Amount 键更改为 FirstItem.Amount 。
我的问题:
什么是合适的方法?