在控制器中,我可以执行数据库查找等并添加一些与模型属性相关的错误消息:
public ActionResult CreateJob(CreateJobModel viewModel)
{
var call = FindCall(viewModel.CallNumber);
if (call == null)
{
ModelState.AddModelError("CallNumber", "Idiot User!");
}
}
我不喜欢 CallNumber 是一个字符串,理想情况下它应该直接引用 viewModel.CallNumber,如果我更改该属性的名称,它也应该更改。
我怎样才能做到这一点?
我想代码最终会是这样的,它需要一个属性访问表达式:
AddModelFieldError(() => viewModel.CallNumber, "Idiot User!");
但我不确定如何创建这样的方法,或者在它是需要错误消息的子/内部属性的情况下。