[英]ASP.Net MVC Error Validation - How to display validation message when passing a custom view model to a view
我一直在向应用程序添加错误和业务验证,当我使用强类型化到一个模型的视图进行测试时,假设位置,我会收到验证摘要以及未通过的每个字段的验证消息,加上我的CSS会按预期突出显示适当的字段...
...当我使用强类型化为自定义视图模型的视图尝试此操作时,假设我将其传递给了位置-这样用户就可以输入新的
IEnumerable<Location> locations
,因此它将在新位置表格下方列出所有现有位置。 当我这样做时,我得到了验证摘要,但是没有显示每个字段的消息,cs也没有将*和突出显示应用于每个不正确的字段。
我使用的是Linq to SQL,因此我将所有验证都添加为部分类,因此在这种情况下,所有验证都来自部分类位置,据我所知,它将与linq to sql创建的设计器文件一起编译,添加我的业务验证。 是否发生此问题,因为我没有传递MyApp.Models.Location视图,而是传递了MyApp.Models.MyCustomViewModel视图? 如果是这样,我最好的方法是什么,这样我就可以只使用一种形式进行创建和列出?
我能够使它正常工作-我将POST方法中的返回值更改为return
return View(new MyCustomViewModel(location) { });
代替
return RedirectToAction(new MyCustomViewModel(location) { });
希望这对任何遇到我遇到的相同问题的人有所帮助-这是我自己对View与RedirectToAction的工作方式不同的误解。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.