Элемент <qualifyAssembly>

Задает полное имя сборки, которая должна загружаться динамически в случае использования неполного имени.

<configuration>
  <runtime>
    <assemblyBinding>
      <qualifyAssembly>

Синтаксис

      <qualifyAssembly partialName=  
      "PartialAssemblyName"  
                 fullName="FullAssemblyName"/>  

Атрибуты и элементы

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

Атрибуты

Атрибут Описание
partialName Обязательный атрибут.

Задает частичное имя сборки в том виде, в котором оно отображается в коде.
fullName Обязательный атрибут.

Задает полное имя сборки в том виде, в каком оно отображается в глобальном кэше сборок.

Дочерние элементы

Отсутствует.

Родительские элементы

Элемент Описание
assemblyBinding Содержит сведения о перенаправлении версии сборки и о расположениях сборок.
configuration Корневой элемент в любом файле конфигурации, используемом средой CLR и приложениями .NET Framework.
runtime Содержит сведения о привязке сборок и сборке мусора.

Remarks

Вызов Assembly.Load метода с использованием частичных имен сборок приводит к тому, что среда CLR ищет сборку только в базовом каталоге приложения. Используйте <qualifyAssembly> элемент в файле конфигурации приложения, чтобы предоставить полные сведения о сборке (имя, версию, маркер открытого ключа и язык и региональные параметры) и вызвать поиск сборки в глобальном кэше сборок в среде CLR.

Атрибут FullName должен включать четыре поля удостоверения сборки: имя, версия, токен открытого ключа и язык и региональные параметры. Атрибут партиалнаме должен ссылаться на сборку частично. Необходимо указать по крайней мере текстовое имя сборки (наиболее распространенный случай), но можно также включить версию, токен открытого ключа или язык и региональные параметры (или любое сочетание четырех, но не все четыре). Партиалнаме должно соответствовать имени, указанному в вызове. Например, нельзя указать в "math" файле конфигурации в качестве атрибута партиалнаме и вызвать 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>  

См. также