我目前使用SAPUI5/OpenUI5來使用和修改OData服務。SAPUI5 OData - 如何創建與現有實體關聯的新條目?
我想創建了一個HTTP POST請求一個新產品進入和有問題正確配置的關聯到一個類別。由於發展的原因,我將此參考文獻OData Service與metadata一起使用。產品已將NavigationProperty添加到正確的類別EntrySet。
<NavigationProperty Name="Category" Relationship="ODataDemo.Product_Category_Category_Products" FromRole="Product_Category" ToRole="Category_Products"/>
我使用下面的JavaScript代碼在我的控制器:
var oCategory = oModel.getData("/Categories(0)");
var oEntry = {};
oEntry.ID = "10";
oEntry.Name = "Beer";
oEntry.Category = oCategory;
oModel.create("/Products", oEntry, {
method: "POST",
success: function(data) {...},
error: function(response) {...}
});
該產品已成功創建/Products(10)
但相對於現有的類別/Products(10)/Category
不能正常工作。相反,會創建一個具有相同ID和信息的新類別(這是否意味着「深度插入」?),但我想使用選定的類別(當然)。
我一定要參考不同類別或我可以創建關聯手動不知何故? OData服務不應檢查類別ID是否已存在,然後使用現有條目?
是否有這種情況的最佳做法?
大,非常感謝你! –