AssociatedMetadataProvider Class

Visual Studio 2010

Provides an abstract class to implement a metadata provider.

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

public abstract class AssociatedMetadataProvider : ModelMetadataProvider

The AssociatedMetadataProvider type exposes the following members.

  NameDescription
Protected methodAssociatedMetadataProviderCalled from constructors in a derived class to initialize the AssociatedMetadataProvider class.
Top

  NameDescription
Protected methodCreateMetadataWhen overridden in a derived class, creates the model metadata for the property.
Public methodEqualsDetermines whether the specified Object is equal to the current Object. (Inherited from Object.)
Protected methodFilterAttributesGets a list of attributes.
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public methodGetHashCodeServes as a hash function for a particular type. (Inherited from Object.)
Public methodGetMetadataForPropertiesReturns a list of properties for the model. (Overrides ModelMetadataProvider.GetMetadataForProperties(Object, Type).)
Protected methodGetMetadataForProperty(Func<Object>, Type, PropertyDescriptor)Returns the metadata for the specified property using the container type and property descriptor.
Public methodGetMetadataForProperty(Func<Object>, Type, String)Returns the metadata for the specified property using the container type and property name. (Overrides ModelMetadataProvider.GetMetadataForProperty(Func<Object>, Type, String).)
Public methodGetMetadataForTypeReturns the metadata for the specified property using the type of the model. (Overrides ModelMetadataProvider.GetMetadataForType(Func<Object>, Type).)
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Protected methodGetTypeDescriptorReturns the type descriptor from the specified type.
Protected methodMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Public methodToStringReturns a string that represents the current object. (Inherited from Object.)
Top

A metadata provider provides metadata for the model within a view. Metadata providers must derive from ModelMetadataProvider. You can inherit from this class if you want to use a custom validator or a third-party validator that uses attribute-based metadata.

This class implements the abstract methods of ModelMetadataProvider and contains only one additional abstract method. When you implement this class, use the AssociatedValidatorProvider class to implement the validator.

Model provider classes and validator provider classes are loosely coupled. Therefore, they work independently, and have no dependencies on each other.

However, the metadata provider exposes metadata that can be accessed and used by validation providers. For example, the MVC default metadata provider (the DataAnnotationsModelMetadataProvider class) reads the display name of an object, and the display name is used by the DataAnnotationsModelValidatorProvider validation provider when it creates a validation error message.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Community Additions

ADD
Show: