【问题标题】:How do i pass a complex object to another View in ASP.NET MVC?如何将复杂对象传递给 ASP.NET MVC 中的另一个视图?
【发布时间】:2008-11-30 05:15:18
【问题描述】:

我正在尝试将一个复杂对象(如果有帮助,可以序列化)传递给另一个视图。

目前这是我在某些控制器方法中拥有的代码:-

User user = New User { Name = "Fred, Email = "xxxx" };
return RedirectToAction("Foo", user);

现在,我在同一个控制器中有以下操作...

[AcceptVerbs(HttpVerbs.Get)]
public ActionResult Foo(User user)
{
 ...
}

当我在那里设置断点时,代码确实停在那里,但user 的值是null。 我需要做什么?我在global.asax 中遗漏了什么吗?

干杯:)

【问题讨论】:

    标签: asp.net-mvc


    【解决方案1】:

    将您的用户对象放入 TempData。您不能将其作为参数传递。

    TempData["User"]  = new User { Name = "Fred", Email = "xxxx" };
    return RedirectToAction("Foo");
    
    [AcceptVerbs(HttpVerbs.Get)]
    public ActionResult Foo()
    {
        User user = (User)TempData["User"];
        ...
    }
    

    类似于How can I maintain ModelState with RedirectToAction?

    【讨论】:

      猜你喜欢
      • 2021-07-22
      • 2010-12-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多