<CompatSortNLSVersion>-Element

Gibt an, dass die Laufzeit Sortierreihenfolgen von Legacyversionen beim Vergleichen von Zeichenfolgen verwenden soll.

<configuration>
  <runtime>
    <CompatSortNLSVersion>

Syntax

<CompatSortNLSVersion
   enabled="4096"/>  

Attribute und Elemente

In den folgenden Abschnitten werden Attribute sowie untergeordnete und übergeordnete Elemente beschrieben.

Attribute

attribute Beschreibung
enabled Erforderliches Attribut.

Gibt die Gebietsschema-ID an, deren Sortierreihenfolge verwendet werden soll.

Enabled-Attribut

Wert BESCHREIBUNG
4096 Die Gebietsschema-ID, die eine andere Sortierreihenfolge darstellt. In diesem Fall stellt 4096 die Sortierreihenfolge von .NET Framework 3.5 und früheren Versionen dar.

Untergeordnete Elemente

Keine

Übergeordnete Elemente

Element BESCHREIBUNG
configuration Das Stammelement in jeder von den Common Language Runtime- und .NET Framework-Anwendungen verwendeten Konfigurationsdatei.
runtime Enthält Informationen über Laufzeitinitialisierungsoptionen.

Bemerkungen

Da die von der System.Globalization.CompareInfo-Klasse in .NET Framework 4 ausgeführten Operationen für die Sortierung, den Vergleich und die Schreibweise von Zeichenfolgen dem Unicode 5.1-Standard entsprechen, können sich die Ergebnisse der Methoden für den Zeichenfolgenvergleich wie String.Compare(String, String) und String.LastIndexOf(String) von früheren Versionen von .NET Framework unterscheiden. Wenn Ihre Anwendung von Legacyverhalten abhängig ist, können Sie die Regeln für den Vergleich und die Sortierung von Zeichenfolgen aus .NET Framework 3.5 und früheren Versionen wiederherstellen, indem Sie das <CompatSortNLSVersion>-Element in der Konfigurationsdatei der Anwendung angeben.

Wichtig

Zum Wiederherstellen von Zeichenfolgenvergleichs- und Zeichenfolgensortierregeln von Legacyversionen muss auch die sort00001000.dll-Dynamic Link Library auf dem lokalen System verfügbar sein.

Sie können Zeichenfolgensortier- und Zeichenfolgenvergleichsregeln von Legacyversionen auch in einer bestimmten Anwendungsdomäne verwenden, indem Sie die Zeichenfolge "NetFx40_Legacy20SortingBehavior" an die SetCompatibilitySwitches-Methode beim Erstellen der Anwendungsdomäne übergeben.

Beispiel

Im folgenden Beispiel werden zwei String-Objekte instanziiert und die String.Compare(String, String, StringComparison)-Methode aufgerufen, um sie mithilfe der Konventionen der aktuellen Kultur zu vergleichen.

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

Wenn Sie das Beispiel in .NET Framework 4 ausführen, wird die folgende Ausgabe angezeigt:

sta follows a in the sort order.  

Diese unterscheidet sich vollkommen von der Ausgabe, die bei Ausführung des Beispiels in .NET Framework 3.5 angezeigt wird:

sta equals a in the sort order.  

Wenn Sie jedoch dem Verzeichnis des Beispiels die folgende Konfigurationsdatei hinzufügen und dann das Beispiel in .NET Framework 4 ausführen, ist die Ausgabe identisch mit der bei einer Ausführung in .NET Framework 3.5.

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

Siehe auch