Controller.UpdateModel Method

Include Protected Members
Include Inherited Members

Updates the specified model instance using values from the controller's current value provider.

This member is overloaded. For complete information about this member, including syntax, usage, and examples, click a name in the overload list.

Overload List

  Name Description
Protected method UpdateModel<TModel>(TModel) Updates the specified model instance using values from the controller's current value provider.
Protected method UpdateModel<TModel>(TModel, String) Updates the specified model instance using values from the controller's current value provider and a prefix.
Protected method UpdateModel<TModel>(TModel, String[]) Updates the specified model instance using values from the controller object's current value provider.
Protected method UpdateModel<TModel>(TModel, IValueProvider) Updates the specified model instance using values from the value provider.
Protected method UpdateModel<TModel>(TModel, String, String[]) Updates the specified model instance using values from the controller's current value provider, a prefix, and included properties.
Protected method UpdateModel<TModel>(TModel, String, IValueProvider) Updates the specified model instance using values from the value provider and a prefix.
Protected method UpdateModel<TModel>(TModel, String[], IValueProvider) Updates the specified model instance using values from the value provider, a prefix, and a list of properties to include.
Protected method UpdateModel<TModel>(TModel, String, String[], String[]) Updates the specified model instance using values from the controller's current value provider, a prefix, a list of properties to exclude, and a list of properties to include.
Protected method UpdateModel<TModel>(TModel, String, String[], IValueProvider) Updates the specified model instance using values from the value provider, a prefix, and a list of properties to include.
Protected method UpdateModel<TModel>(TModel, String, String[], String[], IValueProvider) Updates the specified model instance using values from the value provider, a prefix, a list of properties to exclude, and a list of properties to include.

Top

Remarks

You do not have to explicitly specify the generic parameter TModel. Instead, you can let the C# or Visual Basic type inference engine determine the generic parameter TModel by omitting it.

The [Overload:System.Web.Mvc.Controller.TryUpdateModel``1] method is like the [Overload:System.Web.Mvc.Controller.UpdateModel``1] method except that the [Overload:System.Web.Mvc.Controller.TryUpdateModel``1] method does not throw an InvalidOperationException exception if the updated model state is not valid.

For more information model validation, see the entry Input Validation vs. Model Validation in ASP.NET MVC on Brad Wilson's blog.

Security noteSecurity Note

Use one of the [Overload:System.Web.Mvc.Controller.TryUpdateModel``1] methods that takes either a list of properties to include (a whitelist) or a list of properties to exclude (a blacklist). If no explicit whitelist or blacklist is passed, the [Overload:System.Web.Mvc.Controller.TryUpdateModel``1] method tries to update every public property in the model for which there is a corresponding value in the request. A malicious user could exploit this in order to update properties that you do not intend to provide access to.

See Also

Reference

Controller Class

System.Web.Mvc Namespace