找回密码
 立即注册

QQ登录

只需一步,快速开始

carl_chen 悬赏达人认证 活字格认证
金牌服务用户   /  发表于:2022-6-6 12:30  /   查看:1985  /  回复:10
100金币
本帖最后由 carl_chen 于 2022-6-6 12:38 编辑

OData查询时,我用expand联级展开两级以上(比如:http://localhost:29574/OData/GetData/学生(4)?$expand=班级($expand=学校)),得不到想要的结果,请问有没有什么办法,或者是我写的OData有错误吗?
需要这样做的原因是,第三方程序访问活字格,如果活字格能一次返回 学生、班级、学校的信息,就非常方便了。



demo如:

其中 查询 学生 时,可以得到如下结果:

查询 班级 时得到如下结果:



但是,我查询 学生 采用两级expand展开时,确失败了,不能得到两级展开的效果。实际的结果只展开了班级,没有展开学校的相关信息,如下所示:



附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册

最佳答案

查看完整内容

不过可以稍微改造一下,给学生表增加一个学校ID。 然后,localhost:29574/OData/GetData/学生(4)?$expand=班级,学校 这样就可以获取到学校呢。 不过,这种方式算是下下策,看一下有没有大佬对这个更熟悉吧。

10 个回复

倒序浏览
最佳答案
最佳答案
Howie.Sun讲师达人认证 悬赏达人认证 活字格认证
论坛元老   /  发表于:2022-6-6 12:30:44
来自 9#
本帖最后由 Howie.Sun 于 2022-6-7 09:06 编辑

不过可以稍微改造一下,给学生表增加一个学校ID。

然后,localhost:29574/OData/GetData/学生(4)?$expand=班级,学校 这样就可以获取到学校呢。

不过,这种方式算是下下策,看一下有没有大佬对这个更熟悉吧。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
David.Zhong讲师达人认证 悬赏达人认证 活字格认证
论坛元老   /  发表于:2022-6-6 14:22:40
2#
大佬,我也不是很懂,找了一些资料,大佬参考一下~
URI Conventions (OData Version 2.0) · OData - the Best Way to REST

大佬弄明白了之后,教教我呗~

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
carl_chen悬赏达人认证 活字格认证
金牌服务用户   /  发表于:2022-6-6 14:57:20
3#
本帖最后由 carl_chen 于 2022-6-6 15:00 编辑
David.Zhong 发表于 2022-6-6 14:22
大佬,我也不是很懂,找了一些资料,大佬参考一下~
URI Conventions (OData Version 2.0) · OData - the  ...

就是弄了好久没解决,包括您提供的这个网址我也翻阅了的。我想可能有1周了吧!一直解决不了。
最后没办法,还是要请专业人士来解释一下

回复 使用道具 举报
David.Zhong讲师达人认证 悬赏达人认证 活字格认证
论坛元老   /  发表于:2022-6-6 18:09:18
4#
抓瞎了,我明天帮大佬请教一下哈~今天想请教的大佬请假了~
回复 使用道具 举报
Howie.Sun讲师达人认证 悬赏达人认证 活字格认证
论坛元老   /  发表于:2022-6-6 18:33:54
5#
carl_chen 发表于 2022-6-6 14:57
就是弄了好久没解决,包括您提供的这个网址我也翻阅了的。我想可能有1周了吧!一直解决不了。
最后没办 ...


OData Expand - OData |微软文档 (microsoft.com)
好像默认的深度就是2呢。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
carl_chen悬赏达人认证 活字格认证
金牌服务用户   /  发表于:2022-6-6 20:04:54
6#
本帖最后由 carl_chen 于 2022-6-6 20:17 编辑
Howie.Sun 发表于 2022-6-6 18:33
OData Expand - OData |微软文档 (microsoft.com)
好像默认的深度就是2呢。

大佬, 这个有没办法设置呢?   还是,只能如您截图所示,只有在代码中修改?
我试了下 expand的 levels 好像没有效果,感觉好像是我写的有问题
http://localhost:29574/OData/GetData/学生(4)?$expand=班级($expand=学校)&$levels=3


回复 使用道具 举报
carl_chen悬赏达人认证 活字格认证
金牌服务用户   /  发表于:2022-6-6 20:16:07
7#
另外,想和大佬确认下,活字格有没有提供类似下面这样的元数据。

https://services.odata.org/v4/TripPinServiceRW/$metadata
回复 使用道具 举报
carl_chen悬赏达人认证 活字格认证
金牌服务用户   /  发表于:2022-6-6 20:18:06
8#
David.Zhong 发表于 2022-6-6 18:09
抓瞎了,我明天帮大佬请教一下哈~今天想请教的大佬请假了~

感谢!
回复 使用道具 举报
carl_chen悬赏达人认证 活字格认证
金牌服务用户   /  发表于:2022-6-14 08:49:23
10#
Howie.Sun 发表于 2022-6-6 12:30
不过可以稍微改造一下,给学生表增加一个学校ID。

然后,localhost:29574/OData/GetData/学生(4)?$exp ...

目前只能先这样了。
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部