Ich habe eine XML-Datei, ich habe einen Knoten und ich lese alle ChildNodes. Der Name des childNode stimmt mit einer Variablen überein, die ich mit dem Wert von childNode festlegen muss.
In der Schleife würde ich gerne einstellen:
Der C # -Code:
%Vor%Der XML-Inhalt sieht so aus:
%Vor%C # setze Variablen:
%Vor%Irgendeine Idee?
Danke,
UPDATE 1: Der Wert "field" in der Schleife ist immer Null.
%Vor%Wenn Sie Variablen basierend auf den Namen von Knoten in XML zuweisen möchten, haben Sie mindestens einige Optionen:
Alle diese Ansätze schlagen einen eher objektorientierten Ansatz für das Problem vor, der nur einige Variablen auffüllt, aber es wäre einfach, eine leichtgewichtige Struktur mit den entsprechenden Elementen zu erstellen, die durch Lesen des XML-Dokuments gefüllt wird.
> Sie können auch eine schlüsselbasierte Sammlung (wie zB Dictionary<string, string>
) verwenden, um die Werte zu speichern, wenn Sie nur eine einfache Name / Wert-Sammlung aus dem Quell-XML erstellen möchten.
Du könntest entweder tun wie "Standard" gesagt hat, oder du könntest in Reflection schauen. Mit der Type.GetMember(string)
-Methode können Sie ein Mitglied mit dem gegebenen Namen (der Tag-Name in Ihrem XML) finden und seinen Wert festlegen.
BEARBEITEN
Samich hat mich geschlagen, also gebe ich ihm +1 - er hat auch einen Beispielcode.
Tags und Links c# xml reflection deserialization