2017-06-15 123 views
-1

我用的JavaScript,你可以使用一個字符串,像這樣訪問一個對象的屬性:使用字符串訪問對象的屬性。 VB.NET

myObject[propertyNameString] 

我如何能爲我的實體數據庫做類似的東西,這個查詢做到這一點:

Dim query = From q In db[tableName] 
      Where q[columnName] = myValue 
      Select z 
+1

這在C#和vb.net不支持。這裏的用例是什麼? –

+0

如果您知道該屬性的名稱,爲什麼不只是'myObject.propertyName'? – Plutonix

+0

@ChetanRanpariya是對的。你可以做一些這樣的事情,但代碼不會看起來很相似,難以管理。 [檢查出來](https://docs.microsoft.com/en-us/dotnet/visual-basic/programming-guide/language-features/early-late-binding/calling-a-property-or-method- using-a-string-name#Anchor_0) –

回答

1

這裏是我居然跑到有關解決這個:

Dim tableName As String = "myTable" 'Set "myTable" dynamically in for loop 
Dim tableObjectType As Type = Type.GetType(tableName) 
Dim result = dbContext.Set(tableObjectType).Find("myPrimaryKey") 'Also set dynamically