getProperty方法在任何其他模型上存在於ODataModel(v2)上。因此,使用不同的很多:
如何ODataModel存儲數據
這是因爲ODataModel存儲通過它的數據是關鍵,例如
{
"EntitySet('Key-1')": {},
"EntitySet('Key-2')": {},
"EntitySet('Key-3')": {},
"ExpandedEntitySet(EntityID='Key-3',ExpandedEntityIS='5')": {}
}
檢查oMyODataDataModel.oData
看到實際存儲的數據(但請不要使用或操作這種方式,因爲這是內部API)。
ODataModels的getProperty
要檢索你不得不說,一個單一的實體是這樣的:
oDataModel.getProperty("/EntitySet('Key-1')");
Eventhough的收集綁定路徑/EntitySet
請求
oDataModel.getProperty("/EntitySet");
會什麼都不返回發生這種情況是因爲oData [「EntitySet」]的內部存儲數據結構中沒有實體,並且getProperty
方法仍然不是其他內容,因此在該內部結構中查找。
包括擴大實體與ODataModels
一個有趣的事情getProperty
方法是bIncludeExpandEntries
參數。如果將其設置爲true,則將返回所訪問的實體,包括所有可能展開的NavigationProperties。在上面的例子
oDataModel.getProperty("/EntitySet('Key-3')");
也將與它返回 「ExpandedEntitySet(ENTITYID = '鍵-3',ExpandedEntityIS = '5')」。
ODataModels的getObject
ODataModels getObject
方法有更多的靈活性,因爲它允許在本地使用的OData的參數$select
和$expand
。獲取EntitySet仍然是不可能的...注意:它不會加載任何缺少的數據,並且返回的數據可能不完整!
您可以使用ODataModel完全相同的方式檢索屬性數據;你的問題到底是什麼? – Qualiture