views:

617

answers:

2

Possible Duplicate:

ASP.NET MVC doesn’t work with ViewState and Postback?

One of the major reasons for using webforms is the ease of being able to maintain viewstate. I would like to build an asp.net mvc application so what options do I have for maintaining viewstate?

+2  A: 

ASP.NET MVC does not use ViewState in the traditional sense (that of storing the values of controls in the web page). Rather, the values of the controls are posted to a controller method. Once the controller method has been called, what you do with those values is up to you.

ASP.NET MVC will persist the values of the controls long enough for you to validate them and (if needed) to round-trip them back to your page for editing or correction. If the controls validate, you can persist them to a database or other data store, where they will be available for subsequent GET requests.

Robert Harvey
A: 

If you're wanting to make for example, a Wizard styled form, you could create a Serializable class to retain the viewstate:

[Serializable]
public class MyWizard
{
    public string Field1 { get; set; }
    public string Field2 { get; set; }
}

You could then serialize this class and use it in a similar way to using ViewState (as a hidden field in the form).

jeef3