Programmatic Model Binding Using UpdateModel()
ASP.NET MVC offers model binding to capture form field values entered in a view. In many cases model binding to complex types serves the purpose. When the model type to fill from the values is known at development time, you can specify a parameter of that type. However, this is not always the case. That is where programmatic model binding comes handy. Programmatic model binding allows you to perform model binding at runtime based on some condition or processing logic.
http://www.binaryintellect.net/articles/81a69f6e-c3ae-4f9e-b620-d0ddd4bdc62e.aspx