Megosztás a következőn keresztül:


<CompatSortNLSVersion> elem

Azt határozza meg, hogy a futtatókörnyezetnek örökölt rendezési sorrendeket kell használnia a sztring-összehasonlítások végrehajtásakor.

<Konfigurációs>
  <Runtime>
    <CompatSortNLSVersion>

Syntax

<CompatSortNLSVersion
   enabled="4096"/>  

Attribútumok és elemek

Az alábbi szakaszok az attribútumokat, a gyermekelemeket és a szülőelemeket ismertetik.

Attribútumok

Attribútum Leírás
enabled Kötelező attribútum.

Megadja azt a területi azonosítót, amelynek rendezési sorrendjét használni szeretné.

enabled attribute

Érték Leírás
4096 Az alternatív rendezési sorrendet képviselő területi azonosító. Ebben az esetben a 4096 a .NET-keretrendszer 3.5-ös és korábbi verzióinak rendezési sorrendjét jelöli.

Gyermekelemek

Nincsenek.

Szülőelemek

Elem Leírás
configuration A közös nyelvi futtatókörnyezet és .NET-keretrendszer alkalmazások által használt összes konfigurációs fájl gyökéreleme.
runtime Információkat tartalmaz a futtatókörnyezet inicializálási beállításairól.

Megjegyzések

Mivel a System.Globalization.CompareInfo .NET-keretrendszer 4 osztálya által végrehajtott sztring-összehasonlítási, rendezési és burkolati műveletek megfelelnek a Unicode 5.1 szabványnak, a sztring-összehasonlítási módszerek eredményei, például String.Compare(String, String) a .NET-keretrendszer String.LastIndexOf(String) korábbi verzióitól eltérhetnek. Ha az alkalmazás az örökölt működéstől függ, visszaállíthatja a .NET-keretrendszer 3.5-ös és korábbi verzióiban használt sztring-összehasonlítási és rendezési szabályokat az alkalmazás konfigurációs fájljában szereplő elem beleszámításával<CompatSortNLSVersion>.

Fontos

Az örökölt sztringek összehasonlítási és rendezési szabályainak visszaállításához a sort00001000.dll dinamikus kapcsolatkódtárnak is elérhetőnek kell lennie a helyi rendszeren.

A régi sztringek rendezési és összehasonlító szabályait is használhatja egy adott alkalmazástartományban, ha az alkalmazástartomány létrehozásakor átadja a "NetFx40_Legacy20SortingBehavior" sztringet a metódusnak SetCompatibilitySwitches .

Példa

Az alábbi példa két String objektumot hoz létre, és meghívja a metódust, String.Compare(String, String, StringComparison) hogy hasonlítsa össze őket az aktuális kultúra konvenciók használatával.

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

Amikor a példát a .NET-keretrendszer 4-ben futtatja, az a következő kimenetet jeleníti meg:

sta follows a in the sort order.  

Ez teljesen eltér attól a kimenettől, amely a példa 3.5-ös .NET-keretrendszer való futtatásakor jelenik meg:

sta equals a in the sort order.  

Ha azonban hozzáadja a következő konfigurációs fájlt a példa könyvtárához, majd futtatja a példát a .NET-keretrendszer 4-ben, a kimenet megegyezik a példában a 3.5-ös .NET-keretrendszer futtatáskor előállított kimenettel.

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

Lásd még