Freigeben über


<CompatSortNLSVersion>-Element

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

<CompatSortNLSVersion  
   enabled="4096"/

Attribute und Elemente

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

Attribute

Attribute

Beschreibungen

enabled

Erforderliches Attribut.

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

Enabled-Attribut

Value

Beschreibungen

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

Beschreibungen

configuration

Das Stammelement in jeder von den Common Language Runtime- und .NET Framework-Anwendungen verwendeten Konfigurationsdatei.

runtime

Enthält Informationen über Laufzeitinitialisierungsoptionen.

Hinweise

Da Zeichenfolgenvergleich, Sortierung und Groß-/Kleinschreibungsoperationen, die von der System.Globalization.CompareInfo-Klasse in .NET Framework 4 ausgeführt werden, dem Unicode 5.1-Standard entsprechen, können die Ergebnisse der Zeichenfolgenvergleichsmethoden wie String.Compare(String, String) und String.LastIndexOf(String) sich von früheren Versionen von .NET Framework unterscheiden. Wenn Ihre Anwendung von Legacyverhalten abhängt, können Sie die Regeln für Zeichenfolgenvergleich und Sortierung aus .NET Framework 3.5 und früheren Versionen wiederherstellen, indem Sie das <CompatSortNLSVersion>-Element in der Konfigurationsdatei der Anwendung angeben.

Wichtiger HinweisWichtig

Wiederherstellen von älteren Zeichenfolgen-Vergleichs- und Sortierregeln erfordert auch die sort00001000.dll-Dynamic Link Library auf dem lokalen System als verfügbar.

Sie können auch ältere Zeichenfolgen-Sortier- und Vergleichsregeln 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, zum sie mithilfe der Konventionen der aktuellen Kultur zu vergleichen.

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
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);       
   }
}

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

sta follows a in the sort order.

Dies ist ganz anders als die Ausgabe, die angezeigt wird, wenn Sie das Beispiel in .NET Framework 3.5 ausführen.

sta equals a in the sort order.

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

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

Siehe auch

Referenz

Schema für Laufzeiteinstellungen

Weitere Ressourcen

Konfigurationsdateischema für .NET Framework

Änderungsprotokoll

Datum

Versionsgeschichte

Grund

Mai 2010

Festgestellt, dass der Schalter <CompatSortNLSVersion> von sort00001000.dll abhängig ist.

Korrektur inhaltlicher Fehler.