我有一个页面有3个部分视图。我需要明显避免身份冲突。所有三个局部视图和主页面都有自己的视图模型。在主视图中,单击按钮将更新div的html,该html最初通过对控制器的ajax调用隐藏,以返回部分视图(onSuccess:div.html(data))。在该局部视图中,我可以通过提交给控制器来更新模型。我可以看到数据正确通过。
如果我故意将所需字段留空并提交部分视图,则应该返回并在验证摘要或字段中显示错误。
就像我在返回模型之前在控制器中添加它一样:
ModelState.AddModelError("", "There was an error submitting data to the database.");
如果我不修改绑定前缀,那就有效。
如果我修改绑定前缀,它不起作用,如下面的方法: 在控制器中:
public ActionResult SaveSchedHeaderSub([Bind(Prefix="SHS")]CPSchedHeaderSubViewModel theModel)
在局部视图中:
@{ ViewData.TemplateInfo.HtmlFieldPrefix = "SHS";}
是的我拥有所有正确的JavaScript文件。模型状态错误在这种情况下不起作用。
非常感谢任何帮助。我只需要在这种情况下以最佳方式为字段名称添加前缀。
我是一位长期读者,这是我的第一个问题。
先谢谢。