У меня есть объект obj
, который содержит список параметров, где каждое свойство является объектом класса, который также содержит список свойств, другими словами, следующий пример
class obj
{
public List<AAcls> AA { get; set; }
public List<BBcls> BB { get; set; }
}
class AAcls
{
public int AID {get;set;}
public string AName {get;set;}
}
class BBcls
{
public int BID {get;set;}
public string BName {get;set;}
}
что я пытаюсь разобрать obj
и заполнить класс CC
следующим образом
class CC
{
public string CCName{get;set;}
public List<DD> keyval{get;set;}
}
class DD
{
public string CCkey{get;set;}
public string CCval{get;set;}
}
, так что окончательный результат будет
CC myc = new CC();
myc.groupname = "AA";
myc.keyval=new List<DD>{ new DD { CCkey:"AID",CCval:"1" }};
CC myc2 = new CC();
myc2.groupname = "BB";
myc2.keyval=new List<DD>{ new DD { CCkey:"BID",CCval:"2" }};
Я пытаюсь использовать отражение, чтобы сделать выше, но без удачи
List<CC> L = new List<CC>();
Type myType = obj.GetType();
IList<PropertyInfo> props = new List<PropertyInfo>(myType.GetProperties());
foreach (PropertyInfo prop in props)
{
object propValue = prop.GetValue(obj, null);
string groupname = prop.Name; // this will give me AA, but i am stuck to get the attributes of AA class (AID,AName)
}
Любая помощь приветствуется.