ResourceReader.GetEnumerator Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt einen Enumerator für dieses ResourceReader Objekt zurück.
public:
virtual System::Collections::IDictionaryEnumerator ^ GetEnumerator();
public:
System::Collections::IDictionaryEnumerator ^ GetEnumerator();
public System.Collections.IDictionaryEnumerator GetEnumerator();
abstract member GetEnumerator : unit -> System.Collections.IDictionaryEnumerator
override this.GetEnumerator : unit -> System.Collections.IDictionaryEnumerator
member this.GetEnumerator : unit -> System.Collections.IDictionaryEnumerator
Public Function GetEnumerator () As IDictionaryEnumerator
Gibt zurück
Ein Enumerator für dieses ResourceReader Objekt.
Implementiert
Ausnahmen
Der Leser wurde geschlossen oder verworfen und kann nicht aufgerufen werden.
Beispiele
Im Beispiel in diesem Abschnitt wird die folgende .txt Datei namens PatientForm.txt verwendet, um die von einer Anwendung verwendeten Ressourcen zu definieren.
Title="Top Pet Animal Clinic"
Label1="Patient Number:"
Label2="Pet Name:"
Label3="Species:"
Label4="Breed:"
Label5="Date of Birth:"
Label6="Age:"
Label7="Owner:"
Label8="Address:"
Label9="Home Phone:"
Label10="Work Phone:"
Label11="Mobile Phone:"
Sie können die .txt Datei in eine RESSOURCEN-Datei kompilieren, indem Sie den folgenden Befehl ausgeben:
resgen PatientForm.txt
Im folgenden Beispiel werden die Ressourcen aufgelistet PatientForm.resources und der Name und wert der einzelnen Ressourcen angezeigt.
using System;
using System.Collections;
using System.Resources;
public class Example
{
public static void Main()
{
var rr = new ResourceReader("PatientForm.resources");
IDictionaryEnumerator dict = rr.GetEnumerator();
int ctr = 0;
while (dict.MoveNext()) {
ctr++;
Console.WriteLine("{0:00}: {1} = {2}", ctr, dict.Key, dict.Value);
}
rr.Close();
}
}
// The example displays the following output:
// 01: Label3 = "Species:"
// 02: Label2 = "Pet Name:"
// 03: Label1 = "Patient Number:"
// 04: Label7 = "Owner:"
// 05: Label6 = "Age:"
// 06: Label5 = "Date of Birth:"
// 07: Label4 = "Breed:"
// 08: Label9 = "Home Phone:"
// 09: Label8 = "Address:"
// 10: Title = "Top Pet Animal Clinic"
// 11: Label10 = "Work Phone:"
// 12: Label11 = "Mobile Phone:"
Imports System.Collections
Imports System.Resources
Module Example
Public Sub Main()
Dim rr As New ResourceReader("PatientForm.resources")
Dim dict As IDictionaryEnumerator = rr.GetEnumerator
Dim ctr As Integer
Do While dict.MoveNext()
ctr += 1
Console.WriteLine("{0:00}: {1} = {2}", ctr, dict.Key, dict.Value)
Loop
rr.Close()
End Sub
End Module
' The example displays the following output:
' 01: Label3 = "Species:"
' 02: Label2 = "Pet Name:"
' 03: Label1 = "Patient Number:"
' 04: Label7 = "Owner:"
' 05: Label6 = "Age:"
' 06: Label5 = "Date of Birth:"
' 07: Label4 = "Breed:"
' 08: Label9 = "Home Phone:"
' 09: Label8 = "Address:"
' 10: Title = "Top Pet Animal Clinic"
' 11: Label10 = "Work Phone:"
' 12: Label11 = "Mobile Phone:"
Hinweise
In der Regel führen Sie Ressourcen auf, indem Sie die GetEnumerator Methode aufrufen und dann wiederholt die MoveNext Methode für das zurückgegebene IDictionaryEnumerator Objekt aufrufen, bis die Methode zurückgegeben wird false. Der Ressourcenname ist aus der IDictionaryEnumerator.Key Eigenschaft verfügbar; der Wert aus der IDictionaryEnumerator.Value Eigenschaft. Das Beispiel veranschaulicht, wie Ressourcen auf diese Weise aufgezählt werden.
Die Implementierung der IDictionaryEnumerator.Value Eigenschaft durch die ResourceReader Klasse kann die folgenden Ausnahmen auslösen:
-
Die Assembly, die den Typ enthält, zu dem die Daten gehören, kann nicht gefunden werden.
-
Die Daten sind nicht im erwarteten Format.
-
Der Typ, zu dem die Daten gehören, kann nicht gefunden werden.
Sie können die Ausnahme behandeln, indem Sie die GetResourceData Methode aufrufen, um Informationen über den Datentyp und das Bytearray abzurufen, das der benannten Ressource zugewiesen ist. Weitere Informationen finden Sie im Abschnitt "Abrufen von Ressourcen nach Name mit GetResourceData" im ResourceReader Klassenthema.
Von Bedeutung
Die ResourceReader Klasse enthält zwei Methoden, die Enumerationen zurückgeben. Die GetEnumerator Methode gibt ein IDictionaryEnumerator Schnittstellenobjekt zurück und ist die empfohlene Methode, die beim Aufzählen von Ressourcen aufgerufen werden soll.