Ваш массив propertyInfos
возвращает длину 0 для одного из моих классов. Изменение строки на
propertyInfos = thisObject.GetType().GetProperties();
Результатом является заполнение. Поэтому эта строка кода - ваша проблема. Появляется, если вы добавите флаг
BindingFlags.Instance
вашим параметрам он вернет те же свойства, что и вызов без параметров. Устраняет ли проблему добавление этого параметра в ваш список?
РЕДАКТИРОВАТЬ: Только что увидел ваше редактирование. Судя по написанному вами коду, у меня это тоже не сработало. Добавление BindingFlags.Instance заставило его вернуть мне свойства. Я бы предложил опубликовать точный код, с которым у вас возникли проблемы, поскольку на скриншоте показан другой код.