實體1具有Entity2的集合作爲導航屬性。我可以通過擴展的Entity2集合成功從ODataController獲取Entity1。但是當我嘗試使用ODataController PUT或PATCH方法更新Entity1時,我只能在Entity2的集合爲null時才能執行此操作。否則Delta爲空。如何使用導航屬性更新Web api OData實體?
public IHttpActionResult Put([FromODataUri] int key, Delta<ClienteleExportTemplate> delta)
有趣的是:當我使用ENTITY2相同ODataController嵌套集合充滿價值的POST方法,我可以成功拯救ENTITY1。 所以這個問題只出現在PUT和PATCH方法中。
這是我爲這個實體模型構建器配置:
modelBuilder.EntitySet<Entity1>("Entity1OData");
modelBuilder.EntitySet<Entity2>("Entity2OData");
我送值POST和PUT使用$ odataresourse模塊angularJs方法作爲JSON陣列。
如何配置Web api 2 ODatav4以支持導航屬性更新?