Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 通过反射递归获取嵌套属性的值_C# - Fatal编程技术网

C# 通过反射递归获取嵌套属性的值

C# 通过反射递归获取嵌套属性的值,c#,C#,我使用此函数递归获取嵌套属性: public PropertyInfo GetProp(Type baseType, string propertyName) { string[] parts = propertyName.Split('.'); return (parts.Length > 1) ? GetProp(baseType.GetProperty(parts[0]).PropertyType, parts.Skip(1).Aggregate((a,i) =&g

我使用此函数递归获取嵌套属性:

public PropertyInfo GetProp(Type baseType, string propertyName)
{
    string[] parts = propertyName.Split('.');

    return (parts.Length > 1) ? GetProp(baseType.GetProperty(parts[0]).PropertyType, parts.Skip(1).Aggregate((a,i) => a + "." + i)) : baseType.GetProperty(propertyName);
}

如何递归地获取值?谢谢。

很抱歉,我现在太忙了,无法想出一个完整的解决方案,但是PropertyInfo类有一个GetValue方法,我相信我在执行此操作时必须使用该方法。也许此解决方案会对您有所帮助-@Konrad Kokosa链接非常有用-