在WCF数据服务(LINQPad)中使用LINQ的三级过滤器



嗨,伙计们,也许我写错了,但不能让它工作。

我得到了以下实体模型:(部门)& lt; 0 . . 1>——& lt; *>(会话)& lt; 1>——& lt; 0 . . 1>(电影)

我运行以下LINQ查询(在LINQPad中):

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

但是我得到错误:

构造或初始化<>f__AnonymousType0 3[LINQPad.User.Division,System.Collections.ObjectModel.Collection [LINQPad.User. session],System.Collections.Generic.IEnumerable ' 1[LINQPad.User. session]类型的实例。用d.Sessions表示。其中(s => (s)。不支持Title != null))

我想知道在WCF数据服务的第三层应用过滤器是否有限制,或者这是我这边的误解。

看来这家伙是对的通过使用?(如果)这样的操作符"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 }};

相关内容

  • 没有找到相关文章

最新更新