0

こんにちは、私はこれを間違った方法で書いているかもしれませんが、うまくいきません。

次のエンティティ モデルを取得しました: [Division]<0..1>--<*>[Session]<1>--<0..1>[Film]

次の LINQ クエリを (LINQPad で) 実行します。

from d in Divisions select new {d, d.Sessions, 
films = from s in d.Sessions where s.Film.Title !=null select s}

しかし、私はエラーが発生します:

式d.Sessions.Where 3[LINQPad.User.Division,System.Collections.ObjectModel.Collection(s => (s .Film.Title != null)) はサポートされていません。

WCF Data サービスの第 3 レベルでフィルターを適用する際に制限があるのか​​、それとも私の誤解なのだろうか。

4

1 に答える 1

0

ここにいるこの男は、? を使用して正しいようです。(iif) この " title= (s.Film == null) ? null : s.Film.Title " のような演算子は問題なく動作します。したがって、Film オブジェクトが null の場合でも、次の式は正常に機能します。

var _divsess = from d in Divisions select new 
  {d , sessionsfilms = from s in d.Sessions 
   select new {s, title= (s.Film == null) ? null : s.Film.Title }};
于 2013-06-06T07:30:27.307 に答える