0

我正在为复杂类型(例如员工)使用编辑器模板。我这样做是因为我想在一个视图中编辑多个员工。这工作正常。现在我需要从控制器中添加一个验证错误。但是当我简单地使用

Modelstate.AddModelError

该错误被添加到我的“外部”模型中,而不是我的编辑器模板正在使用的模型中。我怎样才能通过错误?

感谢您的任何建议!

4

1 回答 1

1

您可以指定此验证问题涉及“外部模型”(或视图模型)的哪个属性:

ModelState.AddModelError("Employee.FirstName", "FirstName is required");

这将针对MyOuterModel.Employee.FirstName.

如果您的视图模型中有一个 Employee 对象,则此方法有效。如果您与一组员工一起工作,您可以编写string.Format("Employee[{0}].FirstName", i).

于 2013-10-23T13:37:28.170 回答