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
veaz-Cyrl-AZ
olan 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