2009-09-15 41 views
2

有沒有一種方法可以在運行時使用自檢在運行時動態創建屬性?在運行時在VB .NET中構造動態屬性

例如假設我有一個類

Public Class Foo 
    Public Property Bar() As String 
     get 
      ... 
     end get 
     set(ByVal value As String) 
      ... 
     end set 
End Class 

有沒有辦法在運行時創建屬性欄?

謝謝!

回答

3

答案是Reflection.Emit。編碼並不是很有趣,但是可以做到你想要的。

+0

此鏈接導致「此主題不再可用」,如果您想更新它 – rogerdeuce 2015-09-01 19:51:28

3

如果您只想要一個動態變量列表,您可以隨時將字典對象設置爲類的成員,然後使用方法設置或獲取特定的字典項。

1

再加上我的評論,你可以添加一個索引器到你的類 - 它可以讓你獲得/設置成員變量。

編輯:我很抱歉。我不知道vb.net沒有索引器。
但仍然可以編寫帶有支持字典的代碼,它可以像索引器一樣工作

+0

+1謝謝 - Larry – 2010-07-23 03:00:29

1

不幸的是,沒有辦法改變運行時類的結構。元數據在編譯時是固定的,並且在運行時不變。

對於Nitpickers :)

這不是100%爲真。分析和ENC API允許您在運行時更改元數據的結構。但這兩種方案都不適用。

相關問題