Rest 在WCF数据服务中,我可以在创建新对象时附上对另一个实体的引用列表吗?

Rest 在WCF数据服务中,我可以在创建新对象时附上对另一个实体的引用列表吗?,rest,wcf-data-services,odata,Rest,Wcf Data Services,Odata,我有一个表文章、一个表标记和一个联合表,用于将标记与文章关联 在创建新文章时,通过向/Service.svc/Articles发送POST请求,是否可以在JSON对象中包含要关联的标记ID列表 比如: { title: "My article title", text: "The content:", Tags: [ { id: 1 }, { id: 2 }, { id: 3 } ] } 如果没有,我可以在一个请求中发送标签列表吗?例如: /Service.svc/Articles

我有一个表文章、一个表标记和一个联合表,用于将标记与文章关联

在创建新文章时,通过向/Service.svc/Articles发送POST请求,是否可以在JSON对象中包含要关联的标记ID列表

比如:

{
  title: "My article title",
  text: "The content:",
  Tags: [ { id: 1 }, { id: 2 }, { id: 3 } ]
}
如果没有,我可以在一个请求中发送标签列表吗?例如:

/Service.svc/Articles(1)/Tags

[ { id: 1 }, { id: 2 }, { id: 3 } ]
还是我必须提出与标签一样多的请求


非常感谢您。

您可以通过POST/PUT/DELETE对$links URL进行修改,如下所述: 这里的示例使用ATOM/XML,但也可以使用相应的JSON格式。 要在一个请求中向服务器发送多个操作以保存往返,您可以创建一个批处理请求,如下所述:

谢谢你的回答。我认为可以在创建另一个条目时附上对该条目的引用,正如OData文档所述:可以通过在创建或修改另一个条目时引用一个条目来建立两个条目之间的新链接。上面说有一个,那么,在多对多关系中,这是如何工作的呢?不能使用发布条目中的link元素修改多对多,因为链接的href不能唯一标识关系另一端的所有实体。要修改多对多,您需要向$links URL发出单独的请求或可能多个请求。