咨询反射中关于FieldInfo.SetValue 自定义数据结构的一个问题

时间:2022-03-13 12:09:06
在使用反射的时候,需要通过FieldInfo.SetValue赋值,如果是内置的数据结构,例如int、string等等就工作正常。
但是如果是自定义的结构体或者类,就抛异常,“类型System.Int32的对象无法转换为类型 temp.Int32_Helper”

 temp.Int32_Helper是我自定义的类,其构造函数为public Int32_Helper()和public Int32_Helper(Int32 original)
我在反射中,想把Int32数值赋值给Int32_Helper类型的,结果抛上述异常。
请问要如何编码才可以正常赋值?谢谢

2 个解决方案

#1


public Int32_Helper(Int32 original)
你都有这个构造函数了,为什么不将你的int传给这个构造函数,然后将Int32_Helper赋值给setvalue

#2


引用 1 楼 starfd 的回复:
public Int32_Helper(Int32 original)
你都有这个构造函数了,为什么不将你的int传给这个构造函数,然后将Int32_Helper赋值给setvalue

谢谢你!! 咨询反射中关于FieldInfo.SetValue 自定义数据结构的一个问题

#1


public Int32_Helper(Int32 original)
你都有这个构造函数了,为什么不将你的int传给这个构造函数,然后将Int32_Helper赋值给setvalue

#2


引用 1 楼 starfd 的回复:
public Int32_Helper(Int32 original)
你都有这个构造函数了,为什么不将你的int传给这个构造函数,然后将Int32_Helper赋值给setvalue

谢谢你!! 咨询反射中关于FieldInfo.SetValue 自定义数据结构的一个问题