How do i pass a complex object to another View in ASP.NET MVC?

I'm trying to pass a complex object (that can be serialized, if that helps) to another view.

Currently this is the code i have, in some controller method :-

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

now, i have the following action in the same controller ...

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

When i set a breakpoint in there, the code does stop there, but the value of user is null. What do i need to do? Am i missing something in the global.asax?

cheers :)

Answers


Put your User object in TempData. You can't pass it as a parameter.

TempData["User"]  = new User { Name = "Fred", Email = "xxxx" };
return RedirectToAction("Foo");

[AcceptVerbs(HttpVerbs.Get)]
public ActionResult Foo()
{
    User user = (User)TempData["User"];
    ...
}

Similar to http://stackoverflow.com/questions/279665/how-can-i-maintain-modelstate-with-redirecttoaction#279740


Need Your Help

MySQL AUTO_INCREMENT according to year

php mysql auto-increment

Im creating a ticketing system and this is my table structure:

Exclude special characters in the start and end of the string

c# asp.net regex

I want a regular expression to exclude special characters in the start and end of the string