Delen via


Assemblybindingsomleiding configureren

Notitie

Dit artikel is specifiek voor .NET Framework. Dit geldt niet voor nieuwere implementaties van .NET, waaronder .NET 6 en nieuwere versies.

Toepassingen gebruiken standaard de set .NET Framework-assembly's die zijn geleverd met de runtimeversie die wordt gebruikt om de toepassing te compileren. U kunt het kenmerk appliesTo in het <assemblyBinding-element> in een toepassingsconfiguratiebestand gebruiken om assemblybindingsverwijzingen om te leiden naar een specifieke versie van de .NET Framework-assembly's. Dit optionele kenmerk maakt gebruik van een .NET Framework-versienummer om aan te geven op welke versie het van toepassing is. Als er geen attribute appliesTo is opgegeven, is het <assemblyBinding-element> van toepassing op alle versies van het .NET Framework.

Het kenmerk appliesTo is geïntroduceerd in .NET Framework versie 1.1. Het wordt genegeerd door .NET Framework versie 1.0. Dit betekent dat alle <assemblyBinding-elementen> worden toegepast wanneer u .NET Framework versie 1.0 gebruikt, zelfs als een attribute appliesTo is opgegeven.

Notitie

Gebruik het kenmerk appliesTo om assemblybindingsomleiding te beperken tot een specifieke versie van de runtime.

Als u bijvoorbeeld assemblybinding wilt omleiden voor een .NET Framework versie 1.0-assembly, moet u de volgende XML-code opnemen in uw toepassingsconfiguratiebestand.

<runtime>
        <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1" appliesTo="v1.0.3705">
            <dependentAssembly>
               * assembly information goes here *
            </dependentAssembly>
       </assemblyBinding>
</runtime>

De <assemblyBinding-elementen> zijn ordergevoelig. Voer eerst assemblybindingsomleidingsgegevens in voor .NET Framework-versie 1.0-assembly's, gevolgd door informatie over assemblybindingsomleiding voor .NET Framework-versie 1.1.1. Voer ten slotte assemblybindingsinformatie in voor elke .NET Framework-assemblyomleiding die niet gebruikmaakt van het kenmerk appliesTo en dus van toepassing is op alle versies van .NET Framework. In het geval van een conflict in omleiding wordt de eerste overeenkomende omleidingsinstructie in het configuratiebestand gebruikt.

Als u bijvoorbeeld één verwijzing wilt omleiden naar een .NET Framework versie 1.0-assembly en een andere verwijzing naar een .NET Framework versie 1.1-assembly, gebruikt u het patroon dat wordt weergegeven in de volgende pseudocode.

<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>

Fouten met configuratiebestanden opsporen

De runtime parseert configuratiebestanden eenmaal wanneer een toepassingsdomein wordt gemaakt en laadt code in dat toepassingsdomein. De algemene taalruntime verwerkt fouten in een configuratiebestand door de vermelding te negeren. De runtime negeert het volledige configuratiebestand als het ongeldige XML bevat. Voor ongeldige XML worden alleen de ongeldige secties genegeerd.

U kunt bepalen of een configuratiebestand wordt gebruikt door te bepalen of er omleidingen van assemblybindingen plaatsvinden. Gebruik de logboekviewer voor assemblybinding (Fuslogvw.exe) om te zien welke assembly's worden geladen. Als u alle assemblybindingen wilt zien, moet u een vermelding voor ForceLog instellen in het register.

Zie ook