MetadataTypeAttribute Clase

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
public sealed class MetadataTypeAttribute : 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
type MetadataTypeAttribute = class
    inherit Attribute
Public NotInheritable Class MetadataTypeAttribute
Inherits Attribute
Herencia
MetadataTypeAttribute
Atributos

Ejemplos

En el ejemplo siguiente se muestra cómo utilizar el 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 aplica el atributo RequiredAttribute 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.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 atributo MetadataTypeAttribute 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.

Use el atributo MetadataTypeAttribute 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 atributo MetadataTypeAttribute 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)

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

Propiedades

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

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.

(Heredado de Attribute)

Métodos

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.

(Heredado de Attribute)
GetHashCode()

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

(Heredado de Attribute)
GetType()

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

(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.When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class.

(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.When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.

(Heredado de Attribute)
MemberwiseClone()

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

(Heredado de Object)
ToString()

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

(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.Maps a set of names to a corresponding set of dispatch identifiers.

(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.Retrieves the type information for an object, which can be used to get the type information for an interface.

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

(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.Provides access to properties and methods exposed by an object.

(Heredado de Attribute)

Se aplica a