4
我有一個函數可以更新數據庫中的客戶端。傳入一個客戶端對象,以及應該更新的字段/屬性的字符串數組。我需要一種方法來訪問客戶端對象中的每個屬性,這取決於數組中的內容。基本上,我正在尋找VB.NET相當於這個javascript:VB .NET按字符串值訪問類屬性
var fields = ["Firstname","Lastname","DOB"];
for(field in fields)
{
var thisField = fields[field];
client[thisField] = obj[thisField];
}
任何幫助將不勝感激!感謝堆棧。
感謝您的好例子。顯然反射是非常昂貴的。這是真的?如果是這樣(並且沒有其他方法這樣做),我可能會爲每個表單編寫自定義Web服務。謝謝! – Brett 2010-11-16 04:37:13
濫用時反射會很昂貴。我不太瞭解您的項目是否可以接受Reflection的開銷,但是您可以採取的步驟(如緩存您在「Dictionary(Of String,PropertyInfo)」中查找的'PropertyInfo'對象'爲更快的檢索)可以減少這種開銷。我會說,嘗試一下,看看它是否足夠快。如果您發現速度不可接受,請轉到優化/緩存路徑或您的自定義Web服務。 – 2010-11-16 04:40:58
乾杯!謝了哥們。 – Brett 2010-11-16 04:42:04