TypeMapAttribute<TTypeMapGroup> Класс

Определение

Представляет атрибут, определяющий сопоставление типов между строкой и типом.

generic <typename TTypeMapGroup>
public ref class TypeMapAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=true)]
public sealed class TypeMapAttribute<TTypeMapGroup> : Attribute
[<System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=true)>]
type TypeMapAttribute<'ypeMapGroup> = class
    inherit Attribute
Public NotInheritable Class TypeMapAttribute(Of TTypeMapGroup)
Inherits Attribute

Параметры типа

TTypeMapGroup

Тип группы карт типов.

Наследование
TypeMapAttribute<TTypeMapGroup>
Атрибуты

Комментарии

Типы, участвующие в неуправляемых операциях взаимодействия с управлением, можно ссылаться в TypeMapAttribute<TTypeMapGroup> атрибуте сборки, объявляющем имя системы внешнего типа, целевой тип и при необходимости "целевой объект", чтобы определить, должен ли целевой тип быть включен в карту. Если конструктор, который не принимает целевой объект обрезки, запись всегда создается в схеме типов.

При обрезке приложения запись в схеме внешнего типа включается при ссылке на тип trim target одним из следующих способов в доступном коде:

  • Аргумент инструкции ldtoken IL.
  • Аргумент инструкции unbox IL.
  • Аргумент инструкции unbox.any IL.
  • Аргумент инструкции isinst IL.
  • Аргумент инструкции castclass IL.
  • Аргумент инструкции box . (Если средство обрезки может определить, что это поле не экранирует и может быть выделено стеком, оно может игнорировать эту box инструкцию и любые соответствующие unbox или unbox.any инструкции.)
  • Аргумент инструкции mkrefany .
  • Аргумент инструкции refanyval .
  • Аргумент инструкции newarr .
  • Тип аргумента метода инструкции newobj , если это тип класса.
  • Тип владения аргументом call метода экземпляра или ldftnтипом владения любого аргумента callvirt метода или ldvirtftn. Если тип владения является интерфейсом, а средство обрезки может определить, что существует только одна реализация интерфейса, то он может интерпретировать аргумент маркера метода, как будто это метод единственного реализующего типа.
  • Универсальный CreateInstance<T>() аргумент метода.
  • Type.GetType Вызовы с константной строкой, представляющей имя типа.

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

Important

Конфликтующие сопоставления ключей и значений не допускаются.

Note

Базовый формат созданных карт определяется реализацией. Различные .NET форм-факторы могут использовать разные форматы. Кроме того, не гарантируется, что TypeMapAttribute<TTypeMapGroup>TypeMapAssociationAttribute<TTypeMapGroup>атрибуты и TypeMapAssemblyTargetAttribute<TTypeMapGroup> атрибуты присутствуют в окончательном изображении после запуска средства обрезки.

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

Имя Описание
TypeMapAttribute<TTypeMapGroup>(String, Type, Type)

Инициализирует новый экземпляр .TypeMapAttribute<TTypeMapGroup>

TypeMapAttribute<TTypeMapGroup>(String, Type)

Инициализирует новый экземпляр .TypeMapAttribute<TTypeMapGroup>

Свойства

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

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

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

Методы

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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