使用LINQ查询嵌套的OData集合

5
我正在尝试使用新的Netflix OData feed (http://odata.netflix.com/Catalog/) 并遇到了一些问题。同时我也在学习LINQ,不过我发现实现我认为很简单的任务却有些困难。
我想返回一个匹配给定类型的Title列表。Titles对象包含Genres集合,但我不知道如何编写此查询。我的下方尝试在LINQPad中执行没有生效。
from t in Titles
where t.Genres.Name.Contains("ABC")
select t
3个回答

7

1

如果您收到一个 DataServiceQueryException 错误,同时伴随着以下信息:请求版本“1.0”对于响应来说太低了。最低支持的版本是“2.0”

您需要升级您的 .Net 版本到 .Net Framework 4 并下载适用于 .NET Framework 4.0 的 LINQPad


我正在使用LINQPad v4.13.4,我相信这是.NET 4版本。 - Kyle Russell

0

Kyle, 这将为您提供按类型列出所有电影的清单

(from g in Genres.Expand("Titles")
where g.Name == "Horror"
select g).Dump();

这将在LinqPad中创建以下URL。
/Catalog/Genres('Horror')?$expand=Titles

有趣的是,我需要使用 .Expand 语法来获取它。 当我用浏览器浏览 Netflix 的 odata feed 并且想获取相同的数据时,我可以通过以下 URL 获取:http://netflix.cloudapp.net/Catalog/Genres('Horror')/Titles
一定有办法可以在没有 .Expand 的情况下获得它。

你写成了Kyke,而不是Kyle。 - Danny G

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接