CachedModelMetadata<TPrototypeCache> Class
Provides a container for cached metadata.
Namespace: System.Web.Mvc
Assembly: System.Web.Mvc (in System.Web.Mvc.dll)
Inheritance Hierarchy
System.Object
System.Web.Mvc.ModelMetadata
System.Web.Mvc.CachedModelMetadata<TPrototypeCache>
System.Web.Mvc.CachedDataAnnotationsModelMetadata
Syntax
public abstract class CachedModelMetadata<TPrototypeCache> : ModelMetadata
generic<typename TPrototypeCache>
public ref class CachedModelMetadata abstract : ModelMetadata
[<AbstractClass>]
type CachedModelMetadata<'TPrototypeCache> =
class
inherit ModelMetadata
end
Public MustInherit Class CachedModelMetadata(Of TPrototypeCache)
Inherits ModelMetadata
Type Parameters
- TPrototypeCache
he type of the container.
Constructors
Name | Description | |
---|---|---|
CachedModelMetadata<TPrototypeCache>(CachedDataAnnotationsModelMetadataProvider, Type, Type, String, TPrototypeCache) | Constructor for creating real instances of the metadata class based on a prototype. |
|
CachedModelMetadata<TPrototypeCache>(CachedModelMetadata<TPrototypeCache>, Func<Object>) | Constructor for creating the prototype instances of the metadata class. |
Properties
Name | Description | |
---|---|---|
AdditionalValues | Gets a dictionary that contains additional metadata about the model.(Inherited from ModelMetadata.) |
|
Container | A reference to the model's container object. Will be non-null if the model represents a property.(Inherited from ModelMetadata.) |
|
ContainerType | Gets or sets the type of the container for the model.(Inherited from ModelMetadata.) |
|
ConvertEmptyStringToNull | Gets or sets a cached value that indicates whether empty strings that are posted back in forms should be converted to null.(Overrides ModelMetadata.ConvertEmptyStringToNull.) |
|
DataTypeName | Gets or sets meta information about the data type.(Overrides ModelMetadata.DataTypeName.) |
|
Description | Gets or sets the description of the model.(Overrides ModelMetadata.Description.) |
|
DisplayFormatString | Gets or sets the display format string for the model.(Overrides ModelMetadata.DisplayFormatString.) |
|
DisplayName | Gets or sets the display name of the model.(Overrides ModelMetadata.DisplayName.) |
|
EditFormatString | Gets or sets the edit format string of the model.(Overrides ModelMetadata.EditFormatString.) |
|
HideSurroundingHtml | Gets or sets a value that indicates whether the model object should be rendered using associated HTML elements.(Overrides ModelMetadata.HideSurroundingHtml.) |
|
HtmlEncode | (Overrides ModelMetadata.HtmlEncode.) |
|
IsComplexType | Gets or sets a value that indicates whether the model is a complex type.(Inherited from ModelMetadata.) |
|
IsNullableValueType | Gets a value that indicates whether the type is nullable.(Inherited from ModelMetadata.) |
|
IsReadOnly | Gets or sets a value that indicates whether the model is read-only.(Overrides ModelMetadata.IsReadOnly.) |
|
IsRequired | Gets or sets a value that indicates whether the model is required.(Overrides ModelMetadata.IsRequired.) |
|
Model | Gets the value of the model.(Inherited from ModelMetadata.) |
|
ModelType | Gets the type of the model.(Inherited from ModelMetadata.) |
|
NullDisplayText | Gets or sets the string to display for null values.(Overrides ModelMetadata.NullDisplayText.) |
|
Order | Gets or sets a value that represents order of the current metadata.(Overrides ModelMetadata.Order.) |
|
Properties | Gets a collection of model metadata objects that describe the properties of the model.(Inherited from ModelMetadata.) |
|
PropertyName | Gets the property name.(Inherited from ModelMetadata.) |
|
PrototypeCache | Gets or sets the prototype cache. |
|
Provider | Gets or sets the provider.(Inherited from ModelMetadata.) |
|
RequestValidationEnabled | Gets or sets a value that indicates whether request validation is enabled.(Inherited from ModelMetadata.) |
|
ShortDisplayName | Gets or sets a short display name.(Overrides ModelMetadata.ShortDisplayName.) |
|
ShowForDisplay | Gets or sets a value that indicates whether the property should be displayed in read-only views such as list and detail views.(Overrides ModelMetadata.ShowForDisplay.) |
|
ShowForEdit | Gets or sets a value that indicates whether the model should be displayed in editable views.(Overrides ModelMetadata.ShowForEdit.) |
|
SimpleDisplayText | Gets or sets the simple display string for the model.(Overrides ModelMetadata.SimpleDisplayText.) |
|
TemplateHint | Gets or sets a hint that suggests what template to use for this model.(Overrides ModelMetadata.TemplateHint.) |
|
Watermark | Gets or sets a value that can be used as a watermark.(Overrides ModelMetadata.Watermark.) |
Methods
Name | Description | |
---|---|---|
ComputeConvertEmptyStringToNull() | This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as CachedDataAnnotationsModelMetadata. Gets or sets a cached value that indicates whether empty strings that are posted back in forms should be converted to null. |
|
ComputeDataTypeName() | This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as CachedDataAnnotationsModelMetadata. Gets or sets meta information about the data type. |
|
ComputeDescription() | This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as CachedDataAnnotationsModelMetadata. Gets or sets the description of the model. |
|
ComputeDisplayFormatString() | This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as CachedDataAnnotationsModelMetadata. Gets or sets the display format string for the model. |
|
ComputeDisplayName() | This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as CachedDataAnnotationsModelMetadata. Gets or sets the display name of the model. |
|
ComputeEditFormatString() | This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as CachedDataAnnotationsModelMetadata. Gets or sets the edit format string of the model. |
|
ComputeHasNonDefaultEditFormat() | This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as CachedDataAnnotationsModelMetadata. |
|
ComputeHideSurroundingHtml() | This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as CachedDataAnnotationsModelMetadata. Gets or sets a cached value that indicates whether the model object should be rendered using associated HTML elements. |
|
ComputeHtmlEncode() | ||
ComputeIsReadOnly() | This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as CachedDataAnnotationsModelMetadata. Gets or sets a cached value that indicates whether the model is read-only. |
|
ComputeIsRequired() | This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as CachedDataAnnotationsModelMetadata. Gets or sets a cached value that indicates whether the model is required. |
|
ComputeNullDisplayText() | This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as CachedDataAnnotationsModelMetadata. Gets or sets the cached string to display for null values. |
|
ComputeOrder() | This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as CachedDataAnnotationsModelMetadata. Gets or sets a cached value that represents order of the current metadata. |
|
ComputeShortDisplayName() | This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as CachedDataAnnotationsModelMetadata. Gets or sets a short display name. |
|
ComputeShowForDisplay() | This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as CachedDataAnnotationsModelMetadata. Gets or sets a cached value that indicates whether the property should be displayed in read-only views such as list and detail views. |
|
ComputeShowForEdit() | This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as CachedDataAnnotationsModelMetadata. Gets or sets a cached value that indicates whether the model should be displayed in editable views. |
|
ComputeSimpleDisplayText() | This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as CachedDataAnnotationsModelMetadata. Gets or sets the cached simple display string for the model. |
|
ComputeTemplateHint() | This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as CachedDataAnnotationsModelMetadata. Gets or sets a cached hint that suggests what template to use for this model. |
|
ComputeWatermark() | This method is protected and therefore cannot be called directly. This method was designed to be overridden in a deriving class such as CachedDataAnnotationsModelMetadata. Gets or sets a cached value that can be used as a watermark. |
|
Equals(Object) | (Inherited from Object.) |
|
Finalize() | (Inherited from Object.) |
|
GetDisplayName() | Gets the display name for the model.(Inherited from ModelMetadata.) |
|
GetHashCode() | (Inherited from Object.) |
|
GetSimpleDisplayText() | Gets or sets the simple display string for the model.(Overrides ModelMetadata.GetSimpleDisplayText().) |
|
GetType() | (Inherited from Object.) |
|
GetValidators(ControllerContext) | Gets a list of validators for the model.(Inherited from ModelMetadata.) |
|
MemberwiseClone() | (Inherited from Object.) |
|
ToString() | (Inherited from Object.) |
Remarks
This class assumes that model metadata is expensive to create, and allows the user to stash a cache object that can be copied around as a prototype to make creation and computation quicker. It delegates the retrieval of values to getter methods, the results of which are cached on a per metadata instance basis. This allows flexible caching strategies: either caching the source of information across instances or caching of the actual information itself, depending on what the developer decides to put into the prototype cache.
The ComputeXyz methods in CachedModelMetadata<TPrototypeCache> are designed to be overridden in a deriving class such as CachedDataAnnotationsModelMetadata. The methods ComputeXyz are protected, they can’t be called directly.
Thread Safety
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
See Also
Return to top