我有一页有 3 个部分视图。我显然需要避免身份冲突。所有三个部分视图和主页都有自己的视图模型。在主视图中,单击按钮将更新最初通过对控制器的 ajax 调用隐藏的 div 的 html,以返回部分视图(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 文件。模型状态错误在这种情况下不起作用。
任何帮助是极大的赞赏。在这种情况下,我只需要以最佳方式为字段名称添加前缀。
我是一个长期的读者,这是我的第一个问题。
提前致谢。