嗨,伙计们,也许我写错了,但不能让它工作。
我得到了以下实体模型:(部门)& 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 }};