MetadataTypeAttribute Classe

Definição

Especifica a classe de metadados a associar a uma classe de modelo de dados.

public ref class MetadataTypeAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=false, Inherited=false)]
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)>]
type MetadataTypeAttribute = class
    inherit Attribute
[<System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=false)>]
type MetadataTypeAttribute = class
    inherit Attribute
Public NotInheritable Class MetadataTypeAttribute
Inherits Attribute
Herança
MetadataTypeAttribute
Atributos

Exemplos

O exemplo seguinte mostra como usar o MetadataTypeAttribute para associar uma classe de metadados a uma classe parcial de entidade. O exemplo aplica o RequiredAttribute atributo a um campo de dados para mostrar como fornecer informação adicional na classe de metadados associada.

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

Observações

O MetadataTypeAttribute atributo permite-lhe associar uma classe a uma classe parcial do modelo de dados. Nesta classe associada, fornece informação adicional de metadados que não está no modelo de dados.

Por exemplo, na classe associada podes aplicar o RequiredAttribute atributo a um campo de dados. Isto obriga a que seja fornecido um valor para o campo mesmo que essa restrição não seja exigida pelo esquema da base de dados.

Utiliza-se o MetadataTypeAttribute atributo da seguinte forma:

  • Na sua aplicação, crie um ficheiro no qual crie a classe parcial do modelo de dados que pretende modificar.

  • Crie a classe de metadados associada.

  • Aplicar o MetadataTypeAttribute atributo à classe de entidade parcial, especificando a classe associada.

Ao aplicar este atributo, deve cumprir as seguintes restrições de utilização:

  • O atributo só pode ser aplicado a uma classe.

  • O atributo não pode ser herdado por classes derivadas.

  • O atributo só pode ser aplicado uma vez.

Construtores

Name Description
MetadataTypeAttribute(Type)

Inicializa uma nova instância da MetadataTypeAttribute classe.

Propriedades

Name Description
MetadataClassType

Obtém a classe de metadados associada a uma classe parcial do modelo de dados.

TypeId

Quando implementado numa classe derivada, obtém um identificador único para esta Attribute.

(Herdado de Attribute)

Métodos

Name Description
Equals(Object)

Devolve um valor que indica se esta instância é igual a um objeto especificado.

(Herdado de Attribute)
GetHashCode()

Devolve o código de hash para esta instância.

(Herdado de Attribute)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
IsDefaultAttribute()

Quando sobrescrito numa classe derivada, indica se o valor desta instância é o valor padrão para a classe derivada.

(Herdado de Attribute)
Match(Object)

Quando sobrescrito numa classe derivada, devolve um valor que indica se esta instância é igual a um objeto especificado.

(Herdado de Attribute)
MemberwiseClone()

Cria uma cópia superficial do atual Object.

(Herdado de Object)
ToString()

Devolve uma cadeia que representa o objeto atual.

(Herdado de Object)

Implementações de Interface Explícita

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

Mapeia um conjunto de nomes para um conjunto correspondente de identificadores de despacho.

(Herdado de Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Recupera a informação de tipo de um objeto, que pode ser usada para obter a informação de tipo para uma interface.

(Herdado de Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Recupera o número de interfaces de informações de tipo que um objeto fornece (0 ou 1).

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

Proporciona acesso a propriedades e métodos expostos por um objeto.

(Herdado de Attribute)

Aplica-se a