2009-12-21 90 views
0

我一直在向我的应用程序添加错误和业务验证,并且当我使用强类型化到一个模型的视图进行测试时,让我们说的地点,我得到验证总结以及验证消息为每个领域没有通过,加上我的CSS突出显示适当的领域按预期...ASP.Net MVC错误验证 - 将自定义视图模型传递给视图时如何显示验证消息

...当我尝试这与一个查看遭到强类型的自定义视图模型,假设我通过它的位置 - 这样用户就可以进入一个新的,以及

IEnumerable<Location> locations 

,所以它会列出OU t新位置表单下的所有现有位置。当我这样做时,我会得到验证摘要,但是不会显示每个字段的消息,也不会将css应用于*并突出显示每个不正确的字段。

我正在使用Linq to SQL,所以我已经将所有的验证添加为部分类,因此在这种情况下,所有验证都来自部分类位置,对于我的理解,这将用设计器文件编译linq到sql创建并添加我的业务验证。发生这个问题是因为我没有传递MyApp.Models.Location视图,而是传递它MyApp.Models.MyCustomViewModel?如果是这样,我最好的方法是什么,这样我就可以只使用一种形式来创建和列表?

回答

0

我能得到这个工作 - 我在POST方法改变返回值返回

return View(new MyCustomViewModel(location) { }); 

,而不是

return RedirectToAction(new MyCustomViewModel(location) { }); 

希望这会有所帮助,如果任何人在同样的问题绊倒我做过 - 这是我对View的工作方式与RedirectToAction不同的误解。

相关问题