DataAnnotationsModelMetadataProvider Class

Implements the default model metadata provider for ASP.NET MVC.


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

public class DataAnnotationsModelMetadataProvider : AssociatedMetadataProvider

The DataAnnotationsModelMetadataProvider type exposes the following members.

Public methodDataAnnotationsModelMetadataProviderInitializes a new instance of the DataAnnotationsModelMetadataProvider class.

Protected methodCreateMetadataGets the metadata for the specified property. (Overrides AssociatedMetadataProvider.CreateMetadata(IEnumerable<Attribute>, Type, Func<Object>, Type, String).)
Public methodEquals (Inherited from Object.)
Protected methodFilterAttributesGets a list of attributes. (Inherited from AssociatedMetadataProvider.)
Protected methodFinalize (Inherited from Object.)
Public methodGetHashCode (Inherited from Object.)
Public methodGetMetadataForPropertiesReturns a list of properties for the model. (Inherited from AssociatedMetadataProvider.)
Protected methodGetMetadataForProperty(Func<Object>, Type, PropertyDescriptor)Returns the metadata for the specified property using the container type and property descriptor. (Inherited from AssociatedMetadataProvider.)
Public methodGetMetadataForProperty(Func<Object>, Type, String)Returns the metadata for the specified property using the container type and property name. (Inherited from AssociatedMetadataProvider.)
Public methodGetMetadataForTypeReturns the metadata for the specified property using the type of the model. (Inherited from AssociatedMetadataProvider.)
Public methodGetType (Inherited from Object.)
Protected methodGetTypeDescriptorReturns the type descriptor from the specified type. (Inherited from AssociatedMetadataProvider.)
Protected methodMemberwiseClone (Inherited from Object.)
Public methodToString (Inherited from Object.)

The ModelMetadataProviders class sets this class as the default metadata provider for the MVC framework. You typically do not have to use this class directly. If you develop a custom attribute-based metadata provider, you can use this implementation as a guide.

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