我有一个下面的对象
public class ResTemplate
{
public string country { get; set; }
public int jobCode { get; set; }
public Attributes attributes { get; set; }
}
public class Attributes
{
public string state { get; set; }
public string region { get; set; }
}
现在我想将其转换为数据表而不使用属性名来读取值
预期输出
country jobcode state region
US 001 IL Chicago
答案 0 :(得分:0)
为什么不试试
myObj.GetType().GetProperty("attributes ").GetType().GetProperty("state")
然后只处理该值。
您也可以使用
PropertyInfo[] properties = myObj.GetType().GetProperties();
然后运行for循环并使用以下命令访问其他属性及其值: roperties [I];
答案 1 :(得分:0)
stateValue
会给你带来渴望的结果。
var objectValue = myObj.GetType().GetProperty("attributes").GetValue(myObj, null);
var stateValue = objectValue.GetType().GetProperty("state").GetValue(objectValue, null);