Задать вопрос
bullock
@bullock

Как вернуть названия всех полей класса?

Как сделать функцию внутри класса которая может вернуть энумератор которой вернет string'и c названиями всех публичных полей этого класса?
  • Вопрос задан
  • 158 просмотров
Подписаться 1 Простой 2 комментария
Решения вопроса 1
bullock
@bullock Автор вопроса
Спасибо всем кто дал совет, в итоге сработала такая конструкция:

public class M2
    {
        public string str { get; set; }
        public List<string> GetNames()
        {
            return GetType().GetProperties().Select(x => x.Name).ToList();
        }
    }
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
EreminD
@EreminD
Кое-что умею
Что-то в этом духе: https://stackoverflow.com/questions/237275/how-can...

Type type = obj.GetType();

    foreach (var f in type.GetFields().Where(f => f.IsPublic)) {
        Console.WriteLine(
            String.Format("Name: {0} Value: {1}", f.Name, f.GetValue(obj));
    }
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы