2010-12-29 10 views
0

LINQPadで以下のクエリを使用しようとしています。それは働いていません。私はこの例外を取得しています:Netflix OData APIで匿名型を正しく使用する方法

非サポート例外:タイプ<のインスタンスを構築するか、初期化> f__AnonymousType0`1 [可能System.String】発現t.BoxArt.SmallUrlがサポートされていませんと。

from t in Titles where t.Id == "ApUFq" select new { t.BoxArt.SmallUrl } 

答えて

1

私は、ネットフリックスのOData APIに精通していないんだけど、あなたの問題は、LINQと共通のつまずきのように見えます。

は、代わりにこれを試してみてください:

from t in Titles 
where t.Id == "ApUFq" 
select new t.BoxArt.SmallUrl; 

または代わりに:

from t in Titles.Where(t0 => t0.Id == "ApUFq").ToArray() 
select new { t.BoxArt.SmallUrl }; 

一方または両方があなたのために働く必要があります。

0


WCF Data Servicesクライアントlinqプロセッサは、メンバーのバインド割り当てを持つ投影のみをサポートします。つまり、フィールドを投影するときは、フィールドを投影タイプの別のフィールドに割り当てる必要があります。

NotSupportedException:t.BoxArt.SmallUrlという式を持つタイプ<> f__AnonymousType0`1 [System.String]のインスタンスの作成または初期化はサポートされていません。

from t in Titles
where t.Id == "ApUFq"
select new { smallUrl = t.BoxArt.SmallUrl }

関連する問題