C yerelleştirme kullanmayı#
Ben sadece çalışmak için yerelleştirme almak için görünmüyor olabilir.
Sınıf kitaplığı var. Şimdi oluşturmak istiyorumresxdosyalar orada, ve bazı Değerleri iş parçacığı kültür temelli dönüş.
Bunu nasıl yapabilirim?
CEVAP
- Bir Kaynak proje dosyası ("dizeleri.diyebilirsiniz Ekle") resx
- Resx dosyasında bir dize kaynak eklemek ve iyi bir isim verin (örnek: "ve ona değer vermek""") Merhaba . Merhaba adı
- Kaynak dosyayı kaydedin
Bu kodu çalıştırın:
Console.WriteLine(strings.Hello);
Baskı gerekir"". Merhaba
Şimdi, yeni bir kaynak dosyası, "dizeleri.isimli Ekle fr."(not "fr" bölümü; bu bir Fransız kaynakları içerir). resx Dizeleri ile aynı adı taşıyan bir dize kaynağı ekleyin.resx, ama Fransızca değeri (Ad="" Değer="") Merhaba. Merhaba Eğer aşağıdaki kodu çalıştırırsanız, yazdırma Merhaba:
Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo("fr-FR");
Console.WriteLine(strings.Hello);
Ne olur sistemi için bir kaynak arayacaktır "fr-FR". Kimse bulamaz (biz belirtilen "dosya"). fr beri Sonra kontrol etmek için geri düşecek "", bulduğu (ve kullanan). fr
, "":. Merhaba aşağıdaki kod yazdırır
Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo("en-US");
Console.WriteLine(strings.Hello);
Çünkü o does değil bulmak herhangi bir "en-US" kaynak ve aynı zamanda hiçbir "en" kaynak, çok daha kolay olacak sizler için varsayılan olan şu ekledik baştan beri.
Gerekirse daha fazla özel kaynakları ile dosyaları (örneğin dizeleri oluşturabilirsiniz.fr-FR.resx ve dizeleri.fr-CA.Fransa ve Kanada'da Fransızca için resx sırasıyla). Her bir dosya için geri çekilin ki kaynaktan farklı olan bu dizeler için kaynaklar eklemek gerekir. Eğer bir metin Fransa ve Kanada ile aynı ise, dizeleri bırakıyoruz.fr.Kanada Fransızcası farklıdır bu dizeler gitmek varken resx,.fr-CA.resx.

Nasıl CPU sayısı python kullanmayı öğr...
Nasıl JavaScript yerelleştirme çalışır...
DisplayNameAttribute yerelleÅŸtirme...
Neden üye başlatma listesi kullanmayı ...
Hiçbir artı ya da eksi Güncellemelerin...