ResourceManager.GetResourceSet(CultureInfo, Boolean, Boolean) Yöntem

Tanım

Belirli bir kültür için kaynak kümesini alır.

public:
 virtual System::Resources::ResourceSet ^ GetResourceSet(System::Globalization::CultureInfo ^ culture, bool createIfNotExists, bool tryParents);
public virtual System.Resources.ResourceSet? GetResourceSet (System.Globalization.CultureInfo culture, bool createIfNotExists, bool tryParents);
public virtual System.Resources.ResourceSet GetResourceSet (System.Globalization.CultureInfo culture, bool createIfNotExists, bool tryParents);
abstract member GetResourceSet : System.Globalization.CultureInfo * bool * bool -> System.Resources.ResourceSet
override this.GetResourceSet : System.Globalization.CultureInfo * bool * bool -> System.Resources.ResourceSet
Public Overridable Function GetResourceSet (culture As CultureInfo, createIfNotExists As Boolean, tryParents As Boolean) As ResourceSet

Parametreler

culture
CultureInfo

Kaynakları alınacak kültür.

createIfNotExists
Boolean

true henüz yüklenmemişse kaynak kümesini yüklemek için; aksi takdirde , false.

tryParents
Boolean

true kaynak kümesi bulunamazsa uygun bir kaynağı yüklemek için kaynak geri dönüşünü kullanmak; false kaynak geri dönüş işlemini atlamak için.

Döndürülenler

Belirtilen kültür için kaynak kümesi.

Özel durumlar

culture parametresidirnull.

tryParents , truekullanılabilir kaynak kümesi bulunamadı ve varsayılan kültür kaynağı yok.

Örnekler

Aşağıdaki örnek, Fransızca (Fransa) kültürü için kültüre özgü kaynakları almak için yöntemini çağırır GetResourceSet . Ardından kaynak kümesindeki tüm kaynakları numaralandırır. ShowNumbers.exe adlı yürütülebilir dosyanın kaynak kodunu içerir. Ayrıca sayıların adlarını içeren aşağıdaki iki metin dosyasını içerir. İlk NumberResources.txt, İngilizce dilinde bir ile on arasında sayıların adlarını içerir:

one=one
two=two
three=three
four=four
five=five
six=six
seven=seven
eight=eight
nine=nine
ten=ten

İkincisi, NumberResources.fr-FR.txt, Fransızca dilinde bir ile dört arasında sayıların adlarını içerir:

one=un
two=deux
three=trois
four=quatre

Kaynak dosyalarını oluşturmak, İngilizce dil kaynak dosyasını yürütülebilir dosyaya eklemek ve Fransızca dil kaynakları için bir uydu derlemesi oluşturmak için bir toplu iş dosyası kullanabilirsiniz. Visual Basic derleyicisini kullanarak yürütülebilir dosya oluşturmak için toplu iş dosyası aşağıdadır:

resgen NumberResources.txt
vbc shownumbers.vb /resource:NumberResources.resources

md fr-FR
resgen NumberResources.fr-FR.txt
al /out:fr-FR\ShowNumbers.resources.dll /culture:fr-FR /embed:NumberResources.fr-FR.resources

C# derleyicisi için aşağıdaki toplu iş dosyasını kullanabilirsiniz:

resgen NumberResources.txt
csc shownumbers.cs /resource:NumberResources.resources

md fr-FR
resgen NumberResources.fr-FR.txt
al /out:fr-FR\ShowNumbers.resources.dll /culture:fr-FR /embed:NumberResources.fr-FR.resources
using System;
using System.Globalization;
using System.Resources;

public class Example
{
   public static void Main()
   {
      String[] numbers = { "one", "two", "three", "four", "five", "six",
                           "seven", "eight", "nine", "ten" };
      var rm = new ResourceManager(typeof(NumberResources));
      ResourceSet rs = rm.GetResourceSet(CultureInfo.CreateSpecificCulture("fr-FR"),
                                         true, false);
      if (rs == null) {
         Console.WriteLine("No resource set.");
         return;
      }

      foreach (var number in numbers)
         Console.WriteLine("{0,-10} '{1}'", number + ":", rs.GetString(number));
   }
}

internal class NumberResources {}
// The example displays the following output:
//       one:       'un'
//       two:       'deux'
//       three:     'trois'
//       four:      'quatre'
//       five:      ''
//       six:       ''
//       seven:     ''
//       eight:     ''
//       nine:      ''
//       ten:       ''
Imports System.Globalization
Imports System.Resources

Module Example
   Public Sub Main()
      Dim numbers() As String = { "one", "two", "three", "four", "five", "six", "seven", "eight", "nine", "ten" }
      Dim rm As New ResourceManager(GetType(NumberResources))
      Dim rs As ResourceSet = rm.GetResourceSet(CultureInfo.CreateSpecificCulture("fr-FR"), True, False)
      If rs Is Nothing Then Console.WriteLine("No resource set.") : Exit Sub
      For Each number In numbers
         Console.WriteLine("{0,-10} '{1}'", number + ":", rs.GetString(number))
      Next            
   End Sub
End Module

Public Class NumberResources
End Class
' The example displays the following output:
'       one:       'un'
'       two:       'deux'
'       three:     'trois'
'       four:      'quatre'
'       five:      ''
'       six:       ''
'       seven:     ''
'       eight:     ''
'       nine:      ''
'       ten:       ''

bağımsız değişkeninin createIfNotExistsfalsedeğerini olarak değiştirirseniz, Resource Manager Fransızca dil kaynaklarını önceden yüklemediğinden yöntem çağrısının döndürdüğünü nullunutmayın.

Açıklamalar

Döndürülen kaynak kümesi, belirtilen kültür için yerelleştirilmiş kaynakları temsil eder. Kaynaklar bu kültür için yerelleştirilmemişse ve tryParents isetrueGetResourceSet, uygun bir kaynağı yüklemek için kaynak geri dönüş kurallarını kullanır. ise false ve kültüre özgü bir kaynak kümesi bulunamazsatryParents, yöntemi döndürürnull. Kaynak geri dönüşü hakkında daha fazla bilgi için Kaynakları Paketleme ve Dağıtma makalesinin "Kaynak Geri Dönüş İşlemi" bölümüne bakın.

Şunlara uygulanır

Ayrıca bkz.