MetadataTypeAttribute MetadataTypeAttribute MetadataTypeAttribute MetadataTypeAttribute Class

Definición

Especifica la clase de metadatos que debe asociarse a una clase de modelo de datos.Specifies the metadata class to associate with a data model class.

public ref class MetadataTypeAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=false)]
[System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=false, Inherited=false)]
[System.AttributeUsage]
public sealed class MetadataTypeAttribute : Attribute
type MetadataTypeAttribute = class
    inherit Attribute
Public NotInheritable Class MetadataTypeAttribute
Inherits Attribute
Herencia
MetadataTypeAttributeMetadataTypeAttributeMetadataTypeAttributeMetadataTypeAttribute
Atributos

Ejemplos

En el ejemplo siguiente se muestra cómo utilizar MetadataTypeAttribute para asociar una clase de metadatos a una clase parcial de entidad.The following example shows how to use the MetadataTypeAttribute to associate a metadata class with an entity partial class. En el ejemplo se RequiredAttribute aplica el atributo a un campo de datos para mostrar cómo proporcionar información adicional en la clase de metadatos asociada.The example applies the RequiredAttribute attribute to a data field to show how to provide additional information in the associated metadata class.

using System;
using System.Web.DynamicData;
using System.ComponentModel.DataAnnotations;

[MetadataType(typeof(CustomerMetaData))]
public partial class Customer
{

   
}


public class CustomerMetaData
{
    // Apply RequiredAttribute
    [Required(ErrorMessage = "Title is required.")]
    public object Title;

   
}

Imports System
Imports System.Web.DynamicData
Imports System.ComponentModel.DataAnnotations

<MetadataType(GetType(CustomerMetadata))> _
Partial Public Class Customer

End Class

Public Class CustomerMetadata

    ' Apply RequitedAttribute.
    <Required(ErrorMessage:="Title is required.")> _
    Public Title As Object

   
End Class

Comentarios

El MetadataTypeAttribute atributo permite asociar una clase a una clase parcial de modelo de datos.The MetadataTypeAttribute attribute enables you to associate a class with a data-model partial class. En esta clase asociada, se proporciona información de metadatos adicional que no está en el modelo de datos.In this associated class you provide additional metadata information that is not in the data model.

Por ejemplo, en la clase asociada puede aplicar el RequiredAttribute atributo a un campo de datos.For example, in the associated class you can apply the RequiredAttribute attribute to a data field. Esto exige que se proporcione un valor para el campo aunque el esquema de la base de datos no requiera esta restricción.This enforces that a value is provided for the field even if this constraint is not required by the database schema.

El MetadataTypeAttribute atributo se usa como se indica a continuación:You use the MetadataTypeAttribute attribute as follows:

  • En la aplicación, cree un archivo en el que cree la clase parcial del modelo de datos que desea modificar.In your application, create a file in which you create the data-model partial class that you want to modify.

  • Cree la clase de metadatos asociada.Create the associated metadata class.

  • Aplique el MetadataTypeAttribute atributo a la clase de entidad parcial, especificando la clase asociada.Apply the MetadataTypeAttribute attribute to the partial entity class, specifying the associated class.

Al aplicar este atributo, debe cumplir las siguientes restricciones de uso:When you apply this attribute, you must adhere to the following usage constraints:

  • El atributo solo se puede aplicar a una clase.The attribute can only be applied to a class.

  • Las clases derivadas no pueden heredar el atributo.The attribute cannot be inherited by derived classes.

  • El atributo solo se puede aplicar una vez.The attribute can be applied only one time.

Constructores

MetadataTypeAttribute(Type) MetadataTypeAttribute(Type) MetadataTypeAttribute(Type) MetadataTypeAttribute(Type)

Inicializa una nueva instancia de la clase MetadataTypeAttribute.Initializes a new instance of the MetadataTypeAttribute class.

Propiedades

MetadataClassType MetadataClassType MetadataClassType MetadataClassType

Obtiene la clase de metadatos asociada a una clase parcial de modelo de datos.Gets the metadata class that is associated with a data-model partial class.

TypeId TypeId TypeId TypeId

Cuando se implementa en una clase derivada, obtiene un identificador único para este Attribute.When implemented in a derived class, gets a unique identifier for this Attribute.

(Inherited from Attribute)

Métodos

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Devuelve un valor que indica si esta instancia es igual que un objeto especificado.Returns a value that indicates whether this instance is equal to a specified object.

(Inherited from Attribute)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Devuelve el código hash de esta instancia.Returns the hash code for this instance.

(Inherited from Attribute)
GetType() GetType() GetType() GetType()

Obtiene el Type de la instancia actual.Gets the Type of the current instance.

(Inherited from Object)
IsDefaultAttribute() IsDefaultAttribute() IsDefaultAttribute() IsDefaultAttribute()

Si se reemplaza en una clase derivada, indica si el valor de esta instancia es el valor predeterminado de la clase derivada.When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class.

(Inherited from Attribute)
Match(Object) Match(Object) Match(Object) Match(Object)

Cuando se invalida en una clase derivada, devuelve un valor que indica si esta instancia es igual a un objeto especificado.When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.

(Inherited from Attribute)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crea una copia superficial del objeto Object actual.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

Devuelve una cadena que representa el objeto actual.Returns a string that represents the current object.

(Inherited from Object)

Implementaciones de interfaz explícitas

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Asigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío.Maps a set of names to a corresponding set of dispatch identifiers.

(Inherited from Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Obtiene la información de tipos de un objeto, que puede utilizarse para obtener la información de tipos de una interfaz.Retrieves the type information for an object, which can be used to get the type information for an interface.

(Inherited from Attribute)
_Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32)

Recupera el número de interfaces de información de tipo que proporciona un objeto (0 ó 1).Retrieves the number of type information interfaces that an object provides (either 0 or 1).

(Inherited from Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Proporciona acceso a las propiedades y los métodos expuestos por un objeto.Provides access to properties and methods exposed by an object.

(Inherited from Attribute)

Se aplica a