Ich konstruiere eine Methode, um eine ArrayList (vermutlich voller Objekte) aufzunehmen und listet dann alle Felder (und ihre Werte) für jedes Objekt in der ArrayList auf.Wie kann ich alle öffentlichen Felder eines Objekts in C# finden?
Derzeit ist mein Code wie folgt:
public static void ListArrayListMembers(ArrayList list)
{
foreach (Object obj in list)
{
Type type = obj.GetType();
string field = type.GetFields().ToString();
Console.WriteLine(field);
}
}
Natürlich verstehe ich das unmittelbare Problem mit diesem Code: wenn sie es funktionieren nur ein Feld in der Arraylist pro Objekt gedruckt werden würde. Ich werde das später beheben - im Moment bin ich nur neugierig, wie man alle öffentlichen Felder, die mit einem Objekt verbunden sind, bekommt.
EDIT: Sorry für Flip-Flop Antworten so viel. Ich hätte jede Methode ausprobiert, bevor ich eine Antwort wählte.
Ihr Code wird dies ausdrucken: System.Reflection.FieldInfo [] –