Мне нужно преобразовать общий объект (ы) в коллекцию NameValueCollection.Я пытаюсь использовать отражение.Хотя я могу получить родительские свойства, я не могу получить свойства родительского свойства, которое является объектом.
Class One
public string name{get;set}
Class Two
public string desc{get;set}
public One OneName{get;set;}
public static NameValueCollection GetPropertyName(
string objType, object objectItem)
{
Type type = Type.GetType(objType);
PropertyInfo[] propertyInfos = type.GetProperties();
NameValueCollection propNames = new NameValueCollection();
foreach (PropertyInfo propertyInfo in objectItem.GetType().GetProperties())
{
if (propertyInfo.CanRead)
{
var pName = propertyInfo.Name;
var pValue = propertyInfo.GetValue(objectItem, null);
if (pValue != null)
{
propNames.Add(pName, pValue.ToString());
}
}
}
return propNames;
}
Я предполагаю, что должен быть какой-то рекурсивный вызов, но не могу понять, как это сделать.Любая помощь приветствуется.