1

我真的需要你的帮助来实现以下目标:

首先让我向您展示我的数据库数据模型:

1- mebs_schedule=>mebs_ingesta
2- mebs_ingesta=>mebs_ingestadetails
3- mebs_ingesta=>mebs_videoitem
4- mebs_ingesta=>mebs_channel=>mebs_channeltuning

使用下面的 URI,我可以得到这棵树以提供时间表参考:

mebs_schedule=>mebs_ingesta

mebs_ingesta=>mebs_ingestadetails

mebs_ingesta=>mebs_videoitem

mebs_ingesta=> mebs_channel

URI ="mebs_schedule({0})?$expand=mebs_ingesta/mebs_videoitem,mebs_ingesta/mebs_ingestadetails,mebs_ingesta/mebs_channel" 现在我还想为每个 mebs_channel 事件获取关联的 mebs_channeltuning 集合。

我在谷歌上花了一些时间来了解这是如何实现的,但什么也没有。

一些暂定:

mebs_schedule(79)?$expand=mebs_ingesta&expand=mebs_videoitem,mebs_ingestadetails,mebs_channel&expand=mebs_channe.mebs_channeltuning

最后一个问题是有什么方法可以扩展所有导入的 Data Model 。

谢谢你的帮助。

环境:VS .NET 2010 / C# 4.0

4

1 回答 1

2

这应该可以正常工作:

URI = "mebs_schedule({0})?$expand=mebs_ingesta/mebs_videoitem,mebs_ingesta/mebs_ingestadetails,mebs_ingesta/mebs_channel/mebs_channeltuning" 

我只是在最后添加了“/mebs_channeltuning”。请注意,您不需要仅显式扩展 mebs_channel,因为它会由于其子项被扩展而被扩展(在该更改之后)。

暂定的解决方案有很多问题。一个是 expand 需要在它之前的 $ 符号(否则它不会被识别为查询选项)。其次是服务器通常只接受一个 $expand 查询选项。(并且 . 不是扩展的分隔符)。

没有办法扩展一切。这是有意的,因为扩展会使数据潜在地呈指数增长,因此可能会导致服务器和客户端出现问题。客户必须明确要求每次扩展。

于 2012-12-28T08:52:29.127 回答