TypeMapAssociationAttribute<TTypeMapGroup> Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет атрибут, который создает связь типа между типом и его прокси-сервером.
generic <typename TTypeMapGroup>
public ref class TypeMapAssociationAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=true)]
public sealed class TypeMapAssociationAttribute<TTypeMapGroup> : Attribute
[<System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=true)>]
type TypeMapAssociationAttribute<'ypeMapGroup> = class
inherit Attribute
Public NotInheritable Class TypeMapAssociationAttribute(Of TTypeMapGroup)
Inherits Attribute
Параметры типа
- TTypeMapGroup
Тип группы карт типов.
- Наследование
- Атрибуты
Комментарии
Типы, используемые в неуправляемой операции взаимодействия, могут использовать TypeMapAssociationAttribute<TTypeMapGroup> для определения условной связи между исходным и прокси-типом. Если источник хранится, то это тип прокси-сервера. Если обрезка наблюдает явное выделение исходного типа, запись вставляется в карту.
При обрезке приложения запись в схеме типов прокси-сервера включается при ссылке на "тип источника" одним из следующих способов в доступном коде:
- Аргумент
ldtokenинструкции IL при DynamicallyAccessedMembersAttribute указании флага, сохраняющего конструкторы для расположения хранилища. - Type.GetType Вызовы с константной строкой, представляющей имя типа при DynamicallyAccessedMembersAttribute указании флага, сохраняющего конструкторы.
- Тип аргумента метода инструкции
newobj. - Универсальный CreateInstance<T>() аргумент метода.
- Аргумент инструкции
box. - Аргумент инструкции
newarr. - Аргумент инструкции
mkrefany. - Аргумент инструкции
refanyval.
Если тип является типом интерфейса, и пользователь может увидеть RuntimeTypeHandle тип для типа как часть операции приведения или разрешения виртуальных методов (например, с IDynamicInterfaceCastable), то следующие случаи также применяются:
- Аргумент инструкции
isinstIL. - Аргумент инструкции
castclassIL. - Тип владения аргумента метода или
callvirtldvirtftn.
Наконец, если средство обрезки определяет, что невозможно получить Type экземпляр, представляющий "исходный тип" во время выполнения, запись может быть опущена из карты типа прокси-сервера, так как ее существование является неизменяемым.
Important
Конфликтующие сопоставления ключей и значений не допускаются.
Note
Базовый формат созданных карт определяется реализацией. Различные .NET форм-факторы могут использовать разные форматы. Кроме того, не гарантируется, что TypeMapAttribute<TTypeMapGroup>TypeMapAssociationAttribute<TTypeMapGroup>атрибуты и TypeMapAssemblyTargetAttribute<TTypeMapGroup> атрибуты присутствуют в окончательном изображении после запуска средства обрезки.
Конструкторы
| Имя | Описание |
|---|---|
| TypeMapAssociationAttribute<TTypeMapGroup>(Type, Type) |
Инициализирует новый экземпляр .TypeMapAssociationAttribute<TTypeMapGroup> |
Свойства
| Имя | Описание |
|---|---|
| TypeId |
При реализации в производном классе получает уникальный идентификатор для этого Attribute. (Унаследовано от Attribute) |
Методы
| Имя | Описание |
|---|---|
| Equals(Object) |
Возвращает значение, указывающее, равен ли этот экземпляр указанному объекту. (Унаследовано от Attribute) |
| GetHashCode() |
Возвращает хэш-код для этого экземпляра. (Унаследовано от Attribute) |
| GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
| IsDefaultAttribute() |
При переопределении в производном классе указывает, является ли значение этого экземпляра значением по умолчанию для производного класса. (Унаследовано от Attribute) |
| Match(Object) |
При переопределении в производном классе возвращает значение, указывающее, равен ли этот экземпляр указанному объекту. (Унаследовано от Attribute) |
| MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
| ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |