如何迭代对象的所有值类型并将其转换为字典?我正在反思的方式将对象的值类型转换为字典<string,string>
obj.GetType().GetProperties()
但它给出了值类型和引用类型。
如何迭代对象的所有值类型并将其转换为字典?我正在反思的方式将对象的值类型转换为字典<string,string>
obj.GetType().GetProperties()
但它给出了值类型和引用类型。
你可以使用的PropertyInfo
Type
的IsValueType
属性:
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));
}
其中关键是名称和值是值obj
实例。
也许你仍然很忙,但我错过了字典;) – Silvermind
OP没有说使用字典是问题..所以我没有包括这一点。另外,我还需要更多来自OP的信息,以确定包含该部分的确切要求。 –
Downvoter关心评论? ... –
字典中的关键字(属性名称?)和值(序列化为某物的值)是什么? – Grozz