MetadataTypeAttribute Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
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
- 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) |