@barsic1234

Всегда ли элементы массива метаданных полей, полученного при помощи рефлексии, располагаются в порядке объявления этих полей?

Имеется класс с несколькими публичными полями:
public class TestClass
    {
        public int field1;
        public float field2;
        public string field3;
    }

Я получаю массив метаданных полей этого класса при помощи рефлексии:
dataObject = new TestClass();

Type type = dataObject.GetType();
FieldInfo[] fields = type.GetFields();

Полученный в результате массив имеет порядок элементов, соответствующий порядку объявления полей в классе (по крайней мере на моем компьютере)
Хотелось бы узнать, может ли возникнуть ситуация в которой порядок элементов массива метаданных не будет соответствовать порядку объявления полей.
  • Вопрос задан
  • 163 просмотра
Решения вопроса 1
shai_hulud
@shai_hulud
Стандартом порядок не гарантирован. Но мне встреченные реализации (.NET, Mono, Unity) имеют порядок объявления.

тут есть хитрый трюк, что бы добиться стабильного порядка
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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