RegionInfo sınıfı

Bu makale, bu API'nin başvuru belgelerine ek açıklamalar sağlar.

sınıfından CultureInfoRegionInfo farklı olarak, sınıf kullanıcı tercihlerini temsil etmez ve kullanıcının diline veya kültürüne bağımlı değildir.

RegionInfo nesnesiyle ilişkilendirilmiş adlar

Bir nesnenin RegionInfo adı, ülke/bölge için ISO 3166'da tanımlanan iki harfli kodlardan biridir. Olay önemli değil. Name, TwoLetterISORegionNameve ThreeLetterISORegionName özellikleri büyük harfle uygun kodları döndürür. Geçerli ad listesi için RegionInfo bkz . ISO 3166: Ülke kodları.

RegionInfo nesnesinin örneğini oluşturma

Bir RegionInfo nesnenin örneğini oluşturmak için oluşturucuya RegionInfo(String) Birleşik Devletler için "ABD" gibi iki harfli bir bölge adı veya İngilizce için "en-US" (Birleşik Devletler) gibi belirli bir kültürün adını geçirirsiniz. Ancak, nesne tamamen dilden bağımsız olmadığından iki harfli bölge adı yerine belirli bir RegionInfo kültür adı kullanmanızı öneririz. , NativeName, ve CurrencyNativeNamegibi DisplayNameçeşitli RegionInfo özellikler kültür adlarına bağlıdır.

Aşağıdaki örnekte Belçika'yı temsil eden üç nesnenin özellik değerleri arasındaki RegionInfo fark gösterilmektedir. Birincisi yalnızca bir bölge adından (BE) oluşturulurken, ikinci ve üçüncü örnek ise sırasıyla kültür adlarından (fr-BE Fransızca (Belçika) ve nl-BE Felemenkçe (Belçika) için) oluşturulur. Örnek, her RegionInfo nesnenin özellik değerlerini almak için yansıma kullanır.

using System;
using System.Globalization;
using System.Reflection;

public class Example
{
    public static void Main()
    {
        // Instantiate three Belgian RegionInfo objects.
        RegionInfo BE = new RegionInfo("BE");
        RegionInfo frBE = new RegionInfo("fr-BE");
        RegionInfo nlBE = new RegionInfo("nl-BE");

        RegionInfo[] regions = { BE, frBE, nlBE };
        PropertyInfo[] props = typeof(RegionInfo).GetProperties(BindingFlags.Instance | BindingFlags.Public);

        Console.WriteLine("{0,-30}{1,18}{2,18}{3,18}\n",
                          "RegionInfo Property", "BE", "fr-BE", "nl-BE");
        foreach (var prop in props)
        {
            Console.Write("{0,-30}", prop.Name);
            foreach (var region in regions)
                Console.Write("{0,18}", prop.GetValue(region, null));

            Console.WriteLine();
        }
    }
}
// The example displays the following output:
//    RegionInfo Property                           BE             fr-BE             nl-BE
//
//    Name                                          BE             fr-BE             nl-BE
//    EnglishName                              Belgium           Belgium           Belgium
//    DisplayName                              Belgium           Belgium           Belgium
//    NativeName                                België          Belgique            België
//    TwoLetterISORegionName                        BE                BE                BE
//    ThreeLetterISORegionName                     BEL               BEL               BEL
//    ThreeLetterWindowsRegionName                 BEL               BEL               BEL
//    IsMetric                                    True              True              True
//    GeoId                                         21                21                21
//    CurrencyEnglishName                         Euro              Euro              Euro
//    CurrencyNativeName                          euro              euro              euro
//    CurrencySymbol                                 €                 €                 €
//    ISOCurrencySymbol                            EUR               EUR               EUR

Aşağıdaki gibi senaryolarda, bir RegionInfo nesne örneği oluştururken ülke/bölge adları yerine kültür adlarını kullanın:

  • Dil adı birincil öneme ait olduğunda. Örneğin, kültür adı için büyük olasılıkla uygulamanızın es-US "Birleşik Devletler" yerine "Estados Unidos" görüntülemesini istersiniz. Yalnızca ülke/bölge adını (US) kullanmak, dile bakılmaksızın "Birleşik Devletler" verir, bu nedenle bunun yerine kültür adıyla çalışmanız gerekir.

  • Betik farklılıklarının dikkate alınması gerektiğinde. Örneğin, ülke/bölge AZ adları az-Latn-AZ ve az-Cyrl-AZolan Azerbaycan kültürleriyle ilgilenir ve Latin ve Kiril betikleri bu ülke/bölge için çok farklı olabilir.

  • Ayrıntıların bakımı önemli olduğunda. Üyeler tarafından RegionInfo döndürülen değerler, nesnenin RegionInfo bir kültür adı veya bölge adı kullanılarak örneğini oluşturup oluşturmadığına bağlı olarak farklılık gösterebilir. Örneğin, aşağıdaki tabloda bir RegionInfo nesne "ABD" bölgesi, "en-US" kültürü ve "es-US" kültürü kullanılarak örneklendiğinde döndürülen değerlerdeki farklar listelenir.

    Üye "US" "en-US" "es-US"
    CurrencyNativeName US Dollar US Dollar Dólar de EE.UU.
    Name US en-US es-US
    NativeName United States United States Estados Unidos
    ToString US en-US es-US