如何通过 Netflix OData API 正确使用匿名类型
我正在尝试在 LINQPad 中使用下面的查询。它不起作用。我收到这个异常:
NotSupportedException:不支持使用表达式 t.BoxArt.SmallUrl 构造或初始化类型 <>f__AnonymousType0`1[System.String] 的实例。
from t in Titles where t.Id == "ApUFq" select new { t.BoxArt.SmallUrl }
I am trying to use the query below in LINQPad. It isnt working. I am getting this exception:
NotSupportedException: Constructing or initializing instances of the type <>f__AnonymousType0`1[System.String] with the expression t.BoxArt.SmallUrl is not supported.
from t in Titles where t.Id == "ApUFq" select new { t.BoxArt.SmallUrl }
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我不熟悉 Netflix OData API,但您的问题似乎是 LINQ 的常见障碍。
试试这个:
或者:
一个或两个应该适合你。
I'm not familiar with the Netflix OData API, but your issue appears to be a common stumbling block with LINQ.
Try this instead:
Or alternatively:
One or both should work for you.
WCF 数据服务客户端 linq 处理器仅支持具有成员绑定分配的投影。这意味着当您投影出一个字段时,您需要将其分配给投影类型中的另一个字段。
NotSupportedException:不支持使用表达式 t.BoxArt.SmallUrl 构造或初始化类型 <>f__AnonymousType0`1[System.String] 的实例。
来自标题中的 t
其中 t.Id == "ApUFq"
选择新的{smallUrl = t.BoxArt.SmallUrl}
The WCF Data Services client linq processor only supports projections which have member bind assignments. Which means that when you project out a field, you need to assign it to another field in the projected type.
NotSupportedException: Constructing or initializing instances of the type <>f__AnonymousType0`1[System.String] with the expression t.BoxArt.SmallUrl is not supported.
from t in Titles
where t.Id == "ApUFq"
select new { smallUrl = t.BoxArt.SmallUrl }