2016-05-17 66 views
0

实体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以支持导航属性更新?

回答