Как получить любой элемент у объекта

Есть объект obj у него есть поля name и age (программа не знает название и количество полей) мне надо взять все его поля и напечатать.


Ответы (1 шт):

Автор решения: timur

Это можно сделать с помощью рефлексии:

public class Test {
    public string name;
    public int age;
}
Test obj = new Test { name = "Вася", age = 10 };

foreach (var field in typeof(Test).GetFields()) { // Получаем информацию о полях 
    Console.WriteLine($"{field.Name}: {field.GetValue(obj)}"); // Выводим имя и значение поля
}

Вывод:

name: Вася
age: 10
→ Ссылка