Asp.net mvc MVC模型状态能否跨越多个控制器

Asp.net mvc MVC模型状态能否跨越多个控制器,asp.net-mvc,Asp.net Mvc,我有一个场景,控制器a中的一个视图将其表单发布到控制器B中的一个操作,然后在该操作中验证数据,如果验证失败,则将错误添加到ModelState,然后该操作重定向回控制器a,以便填充验证消息 我遇到的问题是,当我返回控制器A时,视图似乎没有发现任何验证错误。ModelState是否仅存在于一个控制器的状态中?ModelState本质上是viewdata,因此它的生存期仅适用于请求。您需要解决的问题是将modelstate存储在TempData中。有一篇关于它的博客文章 using MvcC

我有一个场景,控制器a中的一个视图将其表单发布到控制器B中的一个操作,然后在该操作中验证数据,如果验证失败,则将错误添加到ModelState,然后该操作重定向回控制器a,以便填充验证消息


我遇到的问题是,当我返回控制器A时,视图似乎没有发现任何验证错误。ModelState是否仅存在于一个控制器的状态中?

ModelState本质上是viewdata,因此它的生存期仅适用于请求。您需要解决的问题是将modelstate存储在
TempData
中。有一篇关于它的博客文章

    using MvcContrib.Filters;

    [ModelStateToTempData]
    public class MyController : Controller {
      //
    ...
    }