Как я могу прочитать свойства объекта, который содержит элемент типа массива, используя отражение в C #. Если у меня есть метод GetMyProperties, и я определяю, что объект является настраиваемым типом, то как я могу прочитать свойства массива и значения внутри него. IsCustomType - это метод определения, является ли тип настраиваемым типом или нет.
public void GetMyProperties(object obj)
{
foreach (PropertyInfo pinfo in obj.GetType().GetProperties())
{
if (!Helper.IsCustomType(pinfo.PropertyType))
{
string s = pinfo.GetValue(obj, null).ToString();
propArray.Add(s);
}
else
{
object o = pinfo.GetValue(obj, null);
GetMyProperties(o);
}
}
}
Сценарий таков: у меня есть объект ArrayClass, а у ArrayClass есть два свойства:
-string Id
-DeptArray[] depts
DeptArray - это еще один класс с двумя свойствами:
-string code
-string value
Итак, это методы получает объект ArrayClass. Я хочу прочитать все свойства сверху вниз и сохранить пару имя / значение в элементе словаря / списка. Я могу сделать это для значения, индивидуального, перечисляемого типа. Я застрял с массивом объектов. Не знаю, как это сделать.