的ObjectQuery返回对象,其中子对象包含了一组值
我有两个班,具体如下:的ObjectQuery返回对象,其中子对象包含了一组值
public class Route
{
public ObservableCollection<Flight> Flights = new ObservableCollection<Flight>();
}
public class Flight
{
string airlineName;
}
我想返回所有路线有由一个运营的航班列表指定航空公司
我想这样做,但Routes.SelectMany(x => x.Flights).Where(x => x.Airline == airline);
返回所有飞行物体 - 我需要的路由对象...
任何人都可以解释我是如何能做到这一点使用的ObjectQuery?提前致谢!
Routes.Where(x =>x.Flights.Any(p=> p.Airline == airline))
谢谢,该工作并返回预期的rresult,但是我收到以下错误:'无法投射对象的类型'WhereEnumerableIterator'1 [Route]'类型'System.Collections.ObjectModel.ObservableCollection'1 [Route]'。 –
如果这项工作如预期的那样,发生此错误时? –
好吧,如果我做了'var result =',那么它就可以工作,并且如果我调试'result'变量包含一组路由,就像预期的那样。但我需要这个函数返回一个'ObservableCollection
这听起来像你想:
Routes.Where(route => route.Flights.Any(flight => flight.Airline == airline))
感谢您的回答,不幸的是RedHat的手指更快,所以我会接受他的立足点。 –
@GavinCoates:根据时间戳,我实际上在RedHat前31秒发布了答案,但我不介意:) –
无论你的类处理航班,所以我没有看到任何地方你得到的路由信息你在哪里指定路线 – MethodMan