我有2种课程。
public class Info
{
public string name {get; set;}
public Address address {get; set;}
}
public class Address
{
public string addressInfo {get;set;}
public string country {get;set;}
}
**
编辑:
Info info = new Info();
string subClass="address";
Type subType = info .GetType().GetProperty(subClass).PropertyType;
string val = typeof(subType).GetType().GetProperty("addressInfo").GetValue(data, null)?.ToString() ?? "";
这是我想要实现的,但是我不能以这种方式进行编码,导致它 出错了。 **
现在,我想通过反射动态获取Info类内部的Address类中的addressInfo的值。我该如何实现? 谢谢!!!
答案 0 :(得分:1)
您可以尝试
var info = new Info();
var property = info
.GetType()
.GetProperty("address");
string val = (string)property
.PropertyType
.GetProperty("addressInfo")
.GetValue(property.GetValue(info));
注意:此方法缺乏适当的错误检查和容错功能,请添加胡椒粉和盐调味