Compartir a través de


MetadataTypeAttribute Clase

Definición

Especifica la clase de metadatos que debe asociarse a una clase de modelo de datos.

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

Ejemplos

En el ejemplo siguiente se muestra cómo usar para MetadataTypeAttribute asociar una clase de metadatos a una clase parcial de entidad. En el ejemplo se aplica el RequiredAttribute atributo a un campo de datos para mostrar cómo proporcionar información adicional en la clase de metadatos asociada.

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.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 del modelo de datos. En esta clase asociada, se proporciona información de metadatos adicional que no está en el modelo de datos.

Por ejemplo, en la clase asociada puede aplicar el RequiredAttribute atributo a un campo de datos. Esto exige que se proporcione un valor para el campo aunque el esquema de base de datos no requiera esta restricción.

Use el atributo de la MetadataTypeAttribute siguiente manera:

  • En la aplicación, cree un archivo en el que cree la clase parcial del modelo de datos que desea modificar.

  • Cree la clase de metadatos asociada.

  • Aplique el MetadataTypeAttribute atributo a la clase de entidad parcial, especificando la clase asociada.

Al aplicar este atributo, debe cumplir las siguientes restricciones de uso:

  • El atributo solo se puede aplicar a una clase .

  • Las clases derivadas no pueden heredar el atributo.

  • El atributo solo se puede aplicar una vez.

Constructores

MetadataTypeAttribute(Type)

Inicializa una nueva instancia de la clase MetadataTypeAttribute.

Propiedades

MetadataClassType

Obtiene la clase de metadatos asociada a una clase parcial de modelo de datos.

TypeId

Cuando se implementa en una clase derivada, obtiene un identificador único para este Attribute.

(Heredado de Attribute)

Métodos

Equals(Object)

Devuelve un valor que indica si esta instancia es igual que un objeto especificado.

(Heredado de Attribute)
GetHashCode()

Devuelve el código hash de esta instancia.

(Heredado de Attribute)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
IsDefaultAttribute()

Si se reemplaza en una clase derivada, indica si el valor de esta instancia es el valor predeterminado de la clase derivada.

(Heredado de Attribute)
Match(Object)

Cuando se invalida en una clase derivada, devuelve un valor que indica si esta instancia es igual a un objeto especificado.

(Heredado de Attribute)
MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Implementaciones de interfaz explícitas

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

Asigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío.

(Heredado de Attribute)
_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.

(Heredado de Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Recupera el número de interfaces de información de tipo que proporciona un objeto (0 ó 1).

(Heredado de Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Proporciona acceso a las propiedades y los métodos expuestos por un objeto.

(Heredado de Attribute)

Se aplica a