有没有一种方法可以在运行时使用自检在运行时动态创建属性?在运行时在VB .NET中构造动态属性
例如假设我有一个类
Public Class Foo
Public Property Bar() As String
get
...
end get
set(ByVal value As String)
...
end set
End Class
有没有办法在运行时创建属性栏?
谢谢!
有没有一种方法可以在运行时使用自检在运行时动态创建属性?在运行时在VB .NET中构造动态属性
例如假设我有一个类
Public Class Foo
Public Property Bar() As String
get
...
end get
set(ByVal value As String)
...
end set
End Class
有没有办法在运行时创建属性栏?
谢谢!
答案是Reflection.Emit。编码并不是很有趣,但是可以做到你想要的。
如果您只想要一个动态变量列表,您可以随时将字典对象设置为类的成员,然后使用方法设置或获取特定的字典项。
再加上我的评论,你可以添加一个索引器到你的类 - 它可以让你获得/设置成员变量。
编辑:我很抱歉。我不知道vb.net没有索引器。
但仍然可以编写带有支持字典的代码,它可以像索引器一样工作
+1谢谢 - Larry – 2010-07-23 03:00:29
不幸的是,没有办法改变运行时类的结构。元数据在编译时是固定的,并且在运行时不变。
对于Nitpickers :)
这不是100%为真。分析和ENC API允许您在运行时更改元数据的结构。但这两种方案都不适用。
此链接导致“此主题不再可用”,如果您想更新它 – rogerdeuce 2015-09-01 19:51:28