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

About UNIX Resources Network

Original, collect and organize Developers related documents, information and materials, contains jQuery, Html, CSS, MySQL, .NET, ASP.NET, SQL, objective-c, iPhone, Ruby on Rails, C, SQL Server, Ruby, Arrays, Regex, ASP.NET MVC, WPF, XML, Ajax, DataBase, and so on.