在c#中搜索List的特定成员

时间:2014-02-04 07:37:46

标签: c# linq xna

我有三个类(Street,Shop,StartingPoint)继承自Event类。 我创建了列表List<Event> eventList = new List<Event>();并将其添加到列表中:eventList.Add(new Street()); eventList.Add(new Shop());等。 我怎样才能访问特定课程?例如,我只想与Shop一起工作。我怎样才能访问它?

2 个答案:

答案 0 :(得分:1)

使用索引器?

eventList[index]

LINQ

eventList.OfType<Shop>().First();

OfType<Shop>()将返回所有Shops。如果您想要单Shop,则可以使用First.

答案 1 :(得分:0)

与Selman22一样,您可以使用eventList.OfType<Shop>().First();访问列表中的第一家商店。如果您想拥有指定的商店,您必须使用商店或街道或其他任何名称。

然后看起来像;

eventList.OfType<Shop>().FirstOrDefault(x => x.StreetName == "WallStreet");

返回商店街道名称为“WallStreet”的商店