.NET我想克隆值類型的字段。我如何使用反射(或其他動態)在值類型上設置字段值?.NET如何設置字段值的值類型使用反射
這適用於引用類型,但不適用於值類型。我明白爲什麼,但我不知道替代方案。
shared function clone(of t)(original as t) as t
dim cloned as t
'if class then execute parameterless constructor
if getType(t).isClass then cloned = reflector.construct(of t)()
dim public_fields = original.getType.getFields()
for each field in public_fields
dim original_value = field.getValue(original)
'this won't work for value type, but it does work for reference type ???
field.setValue(cloned, original_value)
next
return cloned
end function
幾乎你代碼中的每一個單詞都是大寫字母。 – SLaks 2010-03-23 00:12:48
哈哈,不知何故我喜歡它 – soccerazy 2010-03-23 04:01:23