.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
하하하 고 어쨌든 나는 그것을 좋아한다 – soccerazy