ASP.NET OData批处理请求中的Content-ID引用

时间:2013-10-15 22:30:25

标签: asp.net odata batch-processing jaydata asp.net-web-api-odata

我有一个ASP.NET WebApi OData服务,我试图使用JayData从JavaScript中使用它。 我的模型如下:

class Parent {
    ICollection<Child> Children;
}
class Child {
    ICollection<Parent> Parents;
}

我正在尝试使用JayData上下文添加一个带有新子实体的新父实体,如:

var child = new db.Children.Child({Parents: []});
var parent = new db.Parents.Parent({Children: [child]});
db.Parents.add(parent);
db.saveChanges();

因此,JayData向包含2个帖子请求的OData服务发送批量请求:一个用于子项,另一个用于父项,其中子项被给予Content-ID = 1, 并且父实体序列化为JSON:

{'Children': [{'__metadata': {'uri': '$1'}}]}

在服务器端,Parent和Child EntitySetControllers的CreateEntity方法被执行,但Parent参数有一个空的Children集合,即它忽略了对请求中新的Child实体的Content-ID引用。

是否有一种方便的方法使它在ASP.NET OData中工作,或者我是否必须从请求中解析Parent的JSON并检查这些引用是否存在?

0 个答案:

没有答案