让我的LINQ查询返回我想要处理的对象类型有一点问题。我非常接近,只需要一点点的输入。多态LINQ查询
我有五个表,对象,人员,位置,集合和收集条目。
对象是人员,位置和集合的基类。一个Collection包含许多CollectionEntries,它们可能包含People,Locations和Collections的条目。
给定一个特定的集合,我想编写LINQ查询来检索该集合中的人员。
到目前为止,我有这个,它返回一个CollectionEntries列表(它们对应于People条目,yay的一半!),但我宁愿让它返回People的实例。
var people = collection.CollectionEntries.Where(
entry => entry.Object is Person).ToList();
我也试着这样做:
var people = collection.CollectionEntries.Where(
entry => entry.Object is Person).OfType<Person>().ToList();
但它不会返回任何东西。有关如何从我的收藏中获取人物列表的任何建议?
端使用select方法,但必须使用entry.Object而不是仅仅输入。感谢您的及时响应! – Matthew 2010-07-19 21:40:17
哎呀是愚蠢的我,我已经纠正了现在的答案。顺便说一句,你可以使用反引号'在评论中包装代码片段 – 2010-07-19 21:45:41