Delen via


<Het element CompatSortNLSVersion>

Hiermee geeft u op dat de runtime verouderde sorteervolgordes moet gebruiken bij het uitvoeren van tekenreeksvergelijkingen.

<configuratie>
  <Runtime>
    <CompatSortNLSVersion>

Syntax

<CompatSortNLSVersion
   enabled="4096"/>  

Kenmerken en elementen

In de volgende secties worden kenmerken, onderliggende elementen en bovenliggende elementen beschreven.

Kenmerken

Kenmerk Beschrijving
enabled Vereist kenmerk.

Hiermee geeft u de landinstelling-id op waarvan de sorteervolgorde moet worden gebruikt.

ingeschakeld kenmerk

Waarde Beschrijving
4096 De landinstellings-id die een alternatieve sorteervolgorde vertegenwoordigt. In dit geval vertegenwoordigt 4096 de sorteervolgorde van de .NET Framework 3.5 en eerdere versies.

Onderliggende elementen

Geen.

Bovenliggende elementen

Element Beschrijving
configuration Het hoofdelement in elk configuratiebestand dat wordt gebruikt door de common language runtime en .NET Framework toepassingen.
runtime Bevat informatie over opties voor runtime-initialisatie.

Opmerkingen

Omdat tekenreeksvergelijkings-, sorteer- en hoofdletterbewerkingen die door de System.Globalization.CompareInfo klasse in de .NET Framework 4 worden uitgevoerd, voldoen aan de Unicode 5.1-standaard, kunnen de resultaten van tekenreeksvergelijkingsmethoden, String.Compare(String, String) zoals enString.LastIndexOf(String), afwijken van eerdere versies van de .NET Framework. Als uw toepassing afhankelijk is van verouderd gedrag, kunt u de vergelijkings- en sorteerregels voor tekenreeksen herstellen die zijn gebruikt in de .NET Framework 3.5 en eerdere versies door het element op te slaan in het <CompatSortNLSVersion> configuratiebestand van uw toepassing.

Belangrijk

Voor het herstellen van verouderde tekenreeksvergelijkings- en sorteerregels moet ook de sort00001000.dll dynamische koppelingsbibliotheek beschikbaar zijn op het lokale systeem.

U kunt ook verouderde tekenreekssorterings- en vergelijkingsregels in een specifiek toepassingsdomein gebruiken door de tekenreeks 'NetFx40_Legacy20SortingBehavior' door te geven aan de SetCompatibilitySwitches methode wanneer u het toepassingsdomein maakt.

Voorbeeld

In het volgende voorbeeld worden twee String objecten geïnstitueerd en wordt de String.Compare(String, String, StringComparison) methode aangeroepen om deze te vergelijken met behulp van de conventies van de huidige cultuur.

using System;

enum StringComparisonResult
{
    precedes = -1,
    equals = 0,
    follows = 1,
};

public class Example
{
   public static void Main()
   {
      string str1 = new string( new char[] {'\u0219', '\u021B', 'a' });
      string str2 = "a";

      Console.WriteLine("{0} {1} {2} in the sort order.",
                        str1,
                        (StringComparisonResult) String.Compare(str1, str2, StringComparison.CurrentCulture),
                        str2);
   }
}
Enum StringComparisonResult As Integer
    precedes = -1
    equals = 0
    follows = 1
End Enum

Module Example
    Public Sub Main()
        Dim str1 As String = ChrW(&h219) + ChrW(&h21B) + "a"
        Dim str2 As String = "a"

        Console.WriteLine("{0} {1} {2} in the sort order.", _
                          str1, _
                          CType(String.Compare(str1, str2, StringComparison.CurrentCulture), StringComparisonResult), _
                          str2)
    End Sub
End Module

Wanneer u het voorbeeld uitvoert op de .NET Framework 4, wordt de volgende uitvoer weergegeven:

sta follows a in the sort order.  

Dit verschilt volledig van de uitvoer die wordt weergegeven wanneer u het voorbeeld uitvoert op de .NET Framework 3.5:

sta equals a in the sort order.  

Als u echter het volgende configuratiebestand toevoegt aan de map van het voorbeeld en vervolgens het voorbeeld uitvoert op de .NET Framework 4, is de uitvoer identiek aan die van het voorbeeld wanneer het wordt uitgevoerd op .NET Framework 3.5.

<?xml version ="1.0"?>  
<configuration>  
   <runtime>  
      <CompatSortNLSVersion enabled="4096"/>  
   </runtime>  
</configuration>  

Zie ook