var query = (from e in Context.Policies
                            where
                            e.SourceAirport.Contains(cabinClasses[0].Origin) &&
                            e.DestinationAirport.Contains(cabinClasses[0].Destination) &&
                            e.Flight.Contains(cabinClasses[0].Flight) &&
                            e.Class.Contains(cabinClasses[0].Class) &&
                            e.ApplicationScope == cabinClasses[0].ApplicationScope &&
                            e.EndTime >= dtDate &&
                            e.StartTime <= dtDate
                            select e).ToArray();运行便出现“LINQ to Entities 不支持 LINQ 表达式节点类型“ArrayIndex””,不知道是什么问题

解决方案 »

  1.   

    曾经碰到过,但忘记了。
    现在,估计:from e in Context.Policies这样,内部明细档都是不load的,需要include明细表,否则明细档集合为空。
      

  2.   

    不是这样的,是linq to entities provider  不支持这种表达式 cabinClasses[0].XXX
    我的解决方法,先设一个变量,把数组的值赋给这个变量,最后把这个变量取代linq表达式中相应的cabinClasses[0].XXX