Настройка перенаправления привязки сборок
Примечание.
Эта статья относится к .NET Framework. Он не применяется к более новым реализациям .NET, включая .NET 6 и более поздние версии.
По умолчанию приложение использует набор сборок .NET Framework, поставляемых вместе с версией среды выполнения, которая использовалась для компиляции приложения. Атрибут appliesTo можно использовать в элементе <assemblyBinding> в файле конфигурации приложения для перенаправления ссылок на привязку сборок в определенную версию сборок платформа .NET Framework сборок. Этот необязательный атрибут содержит номер версии .NET Framework, к которой применяется перенаправление. Если атрибут appliesTo не указан, <элемент assemblyBinding> применяется ко всем версиям платформа .NET Framework.
Атрибут appliesTo появился в платформа .NET Framework версии 1.1; он игнорируется платформа .NET Framework версии 1.0. Это означает, что все элементы assemblyBinding> применяются при использовании платформа .NET Framework версии 1.0, даже если указан атрибут appliesTo.<
Примечание.
Используйте атрибут appliesTo, чтобы ограничить перенаправление привязки сборки лишь определенной версией среды выполнения.
Например, чтобы перенаправить привязку сборки .NET Framework версии 1.0, следует включить в файл конфигурации приложения приведенный ниже код XML.
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1" appliesTo="v1.0.3705">
<dependentAssembly>
* assembly information goes here *
</dependentAssembly>
</assemblyBinding>
</runtime>
Элементы <assemblyBinding> чувствительны к порядкам. Сначала следует вводить сведения о перенаправлении привязок для сборок .NET Framework версии 1.0, а затем для сборок .NET Framework версии 1.1. И только после этого вводятся сведения о перенаправлении привязок для любых перенаправлений сборок .NET Framework, которые не используют атрибут appliesTo и поэтому применимы ко всем версиям .NET Framework. В случае конфликта перенаправления используется первый подходящий оператор перенаправления в файле конфигурации.
Например, чтобы перенаправить одну ссылку на сборку .NET Framework 1.0, а другую ссылку — на сборку .NET Framework 1.1, можно использовать шаблон, показанный в псевдокоде ниже.
<assemblyBinding xmlns="..." appliesTo="v1.0.3705">
<!-- .NET Framework version 1.0 redirects here. -->
</assemblyBinding>
<assemblyBinding xmlns="..." appliesTo="v1.1.4322">
<!-- .NET Framework version 1.1 redirects here. -->
</assemblyBinding>
<assemblyBinding xmlns="...">
<!-- Redirects meant for all versions of the .NET Framework. -->
</assemblyBinding>
Отладка файлов конфигурации
Среда выполнения анализирует файлы конфигурации один раз при создании домена приложения и загружает код в этот домен. Среда CLR обрабатывает ошибки в файле конфигурации, игнорируя данную запись. Среда выполнения игнорирует весь файл конфигурации, если он содержит неправильный код XML. Что касается недопустимого кода XML, игнорируются только недопустимые разделы.
Чтобы определить, используется ли файл конфигурации, можно проверить, происходит ли перенаправление привязки сборки. Чтобы узнать, какие сборки загружаются, используйте средство просмотра журнала привязки сборок (Fuslogvw.exe). Чтобы просмотреть все привязки сборок, необходимо создать запись для параметра ForceLog в реестре.