MetadataTypeAttribute Класс

Определение

Указывает класс метаданных для связывания с классом модели данных.

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
Наследование
MetadataTypeAttribute
Атрибуты

Примеры

В следующем примере показано, как использовать MetadataTypeAttribute класс метаданных для связывания класса метаданных с частичным классом сущности. В примере атрибут применяется RequiredAttribute к полю данных, чтобы показать, как предоставить дополнительные сведения в связанном классе метаданных.

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

Комментарии

Атрибут MetadataTypeAttribute позволяет связать класс с частичным классом модели данных. В этом связанном классе вы предоставляете дополнительные сведения о метаданных, которые не содержатся в модели данных.

Например, в связанном классе атрибут можно применить RequiredAttribute к полю данных. Это обеспечивает предоставление значения для поля, даже если это ограничение не требуется схемой базы данных.

Атрибут используется MetadataTypeAttribute следующим образом:

  • В приложении создайте файл, в котором создается частичный класс модели данных, который требуется изменить.

  • Создайте связанный класс метаданных.

  • Примените MetadataTypeAttribute атрибут к классу частичной сущности, указав связанный класс.

При применении этого атрибута необходимо придерживаться следующих ограничений использования:

  • Атрибут может применяться только к классу.

  • Атрибут нельзя наследовать производными классами.

  • Атрибут может применяться только один раз.

Конструкторы

Имя Описание
MetadataTypeAttribute(Type)

Инициализирует новый экземпляр класса MetadataTypeAttribute.

Свойства

Имя Описание
MetadataClassType

Возвращает класс метаданных, связанный с частичным классом модели данных.

TypeId

При реализации в производном классе получает уникальный идентификатор для этого Attribute.

(Унаследовано от Attribute)

Методы

Имя Описание
Equals(Object)

Возвращает значение, указывающее, равен ли этот экземпляр указанному объекту.

(Унаследовано от Attribute)
GetHashCode()

Возвращает хэш-код для этого экземпляра.

(Унаследовано от Attribute)
GetType()

Возвращает Type текущего экземпляра.

(Унаследовано от Object)
IsDefaultAttribute()

При переопределении в производном классе указывает, является ли значение этого экземпляра значением по умолчанию для производного класса.

(Унаследовано от Attribute)
Match(Object)

При переопределении в производном классе возвращает значение, указывающее, равен ли этот экземпляр указанному объекту.

(Унаследовано от Attribute)
MemberwiseClone()

Создает неглубокую копию текущей Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

Явные реализации интерфейса

Имя Описание
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Сопоставляет набор имен соответствующему набору идентификаторов диспетчеризации.

(Унаследовано от Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Извлекает сведения о типе объекта, который можно использовать для получения сведений о типе для интерфейса.

(Унаследовано от Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Возвращает количество предоставляемых объектом интерфейсов для доступа к сведениям о типе (0 или 1).

(Унаследовано от Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Предоставляет доступ к свойствам и методам, предоставляемым объектом.

(Унаследовано от Attribute)

Применяется к