19

我有一个使用这样的模型项列表的视图:

List<It4You.AlertBrick.Library.Domain.Order.AbOrderLineItemPicked>

当我在服务器端获得此列表时,我会检查这是否是一种类型的项目,它必须具有有效的序列号。如果它是另一种类型,我会检查用户是否在“选中”复选框中打勾。如果这两个都失败了,我想在这一行中添加一个模型状态错误。这样做的最佳方法是什么?

4

2 回答 2

35

您可以非常简单地直接添加ModelState为键/值对:

ModelState.AddModelError("error", "Serial is invalid");

然后在你看来:@Html.ValidationMessage("error")

于 2011-12-05T14:16:55.360 回答
0

您可以使用for循环在列表中设置错误。例如;

 for (int i = 0; i <mylist.Count(); i++)
 {
  if (dmylist[i].prop1== null)
     ModelState.AddModelError("dmylist[" + i + "].prop1", "prop1 is required.");
 }
于 2020-12-01T19:11:22.593 回答