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 класс метаданных для связывания класса метаданных с частичным классом сущности. В примере атрибут применяется 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) |