Controller.UpdateModel<TModel> Method (TModel, String, array<String[], array<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.

Namespace:  System.Web.Mvc
Assembly:  System.Web.Mvc (in System.Web.Mvc.dll)


Protected Friend Sub UpdateModel(Of TModel As Class) ( _
    model As TModel, _
    prefix As String, _
    includeProperties As String(), _
    excludeProperties As String(), _
    valueProvider As IValueProvider _
Dim model As TModel
Dim prefix As String 
Dim includeProperties As String()
Dim excludeProperties As String()
Dim valueProvider As IValueProvider 

Me.UpdateModel(model, prefix, includeProperties, _
    excludeProperties, valueProvider)
protected internal void UpdateModel<TModel>(
    TModel model,
    string prefix,
    string[] includeProperties,
    string[] excludeProperties,
    IValueProvider valueProvider
where TModel : class
protected public:
generic<typename TModel>
where TModel : ref class 
void UpdateModel(
    TModel model, 
    String^ prefix, 
    String[]^>^ includeProperties, 
    String[]^>^ excludeProperties, 
    IValueProvider^ valueProvider
member UpdateModel : 
        model:'TModel * 
        prefix:string * 
        includeProperties:string[] * 
        excludeProperties:string[] * 
        valueProvider:IValueProvider -> unit   when 'TModel : not struct
JScript does not support generic types and methods.

Type Parameters

  • TModel
    The type of the model object.


  • model
    Type: TModel

    The model instance to update.

  • prefix
    Type: System.String

    The prefix to use when looking up values in the value provider.

  • includeProperties
    Type: array<System.String[]

    A list of properties of the model to update.

  • excludeProperties
    Type: array<System.String[]

    A list of properties to explicitly exclude from the update. These are excluded even if they are listed in the includeProperties parameter list.


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.

See Also


Controller Class

UpdateModel Overload

System.Web.Mvc Namespace