将对象的值类型转换为Dictionary <string,string =“”> </string,>

时间:2014-02-27 22:02:57

标签: c# .net linq c#-4.0 reflection

如何遍历对象的所有值类型并将其转换为字典?我正在以反思的方式前进

obj.GetType().GetProperties()

但是它提供了值类型和引用类型。

1 个答案:

答案 0 :(得分:2)

您可以使用IsValueType PropertyInfo的{​​{1}}属性:

Type

将其添加到字典会变为:

obj.GetType().GetProperties().Where(x => x.PropertyType.IsValueType)

其中键是名称,值是foreach (var propertyInfo in obj.GetType().GetProperties().Where(x => x.PropertyType.IsValueType)) { dictionary.Add(propertyInfo.Name, propertyInfo.GetValue(obj)); } 实例中的值。