<Элемент qualifyAssembly>
Задает полное имя сборки, которая должна загружаться динамически в случае использования неполного имени.
<Конфигурации>
<Среды выполнения>
<assemblyBinding>
<qualifyAssembly>
Синтаксис
<qualifyAssembly partialName=
"PartialAssemblyName"
fullName="FullAssemblyName"/>
Атрибуты и элементы
В следующих разделах описаны атрибуты, дочерние и родительские элементы.
Атрибуты
Атрибут | Описание |
---|---|
partialName |
Обязательный атрибут. Указывает частичное имя сборки в том виде, в котором оно отображается в коде. |
fullName |
Обязательный атрибут. Указывает полное имя сборки в том виде, в котором оно отображается в глобальном кэше сборок. |
Дочерние элементы
Отсутствует.
Родительские элементы
Элемент | Описание |
---|---|
assemblyBinding |
Содержит сведения о перенаправлении версии сборки и о расположениях сборок. |
configuration |
Корневой элемент в любом файле конфигурации, используемом средой CLR и приложениями .NET Framework. |
runtime |
Содержит сведения о привязке сборок и сборке мусора. |
Комментарии
Assembly.Load Вызов метода с использованием частичных имен сборок приводит к тому, что среда CLR будет искать сборку только в базовом каталоге приложения. <Используйте элемент qualifyAssembly> в файле конфигурации приложения, чтобы предоставить полные сведения о сборке (имя, версия, маркер открытого ключа и язык и региональные параметры) и заставить среду CLR искать сборку в глобальном кэше сборок.
Атрибут fullName должен включать четыре поля удостоверения сборки: имя, версия, маркер открытого ключа и язык и региональные параметры. Атрибут partialName должен частично ссылаться на сборку. Необходимо указать по крайней мере текстовое имя сборки (наиболее распространенный случай), но можно также указать версию, маркер открытого ключа или язык и региональные параметры (или любое сочетание четырех, но не всех четырех). PartialName должно соответствовать имени, указанному в вызове. Например, нельзя указать "math"
в качестве атрибута partialName в файле конфигурации и вызвать Assembly.Load("math, Version=3.3.3.3")
в коде.
Пример
В следующем примере вызов Assembly.Load("math")
логически преобразуется в Assembly.Load("math,version=1.0.0.0,publicKeyToken=a1690a5ea44bab32,culture=neutral")
.
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<qualifyAssembly partialName="math"
fullName=
"math,version=1.0.0.0,publicKeyToken=a1690a5ea44bab32,culture=neutral"/>
</assemblyBinding>
</runtime>
</configuration>