C# 如何转换列表<;积极性>;列出<;实体>;?
如何将列表转换为列表C# 如何转换列表<;积极性>;列出<;实体>;?,c#,C#,如何将列表转换为列表 IEntity是我的接口,Entity是一个实现IEntity的类。不适用于一般情况-并非所有的IEntity都必须是实体(也就是说,可以是实现相同接口的另一个类)在列表上执行Cast()操作即可; List<IEntity> myList; //initialization omitted List<Entity> convertedList = myList.OfType<Entity>().ToList(); //省略初始化 L
IEntity是我的接口,Entity是一个实现IEntity的类。不适用于一般情况-并非所有的
IEntity
都必须是实体(也就是说,可以是实现相同接口的另一个类)
在列表上执行Cast()
操作即可;
List<IEntity> myList;
//initialization omitted
List<Entity> convertedList = myList.OfType<Entity>().ToList();
//省略初始化
List convertedList=myList.OfType().ToList();
当然,这将只生成使用System.Linq的实体类型的项目;
using System.Linq;
List<Entity> newList = list.Cast<Entity>().ToList();
//or
List<Entity> newList = list.OfType<Entity>().ToList();
List newList=List.Cast().ToList();
//或
List newList=List.OfType().ToList();
您可以使用LINQ来完成。extension方法将提取出作为特定类的实体,您可以使用这些实体构建列表:
List<IEntity> theEntities = GetEntities();
List<YourEntity> newList = theEntities.OfType<YourEntity>().ToList();
List theEntities=GetEntities();
List newList=类型()的实体。ToList();
如果您确实知道所有实体都是您的特定类,那么您可以使用:
List theEntities=GetEntities();
List newList=theenties.Cast().ToList();
List<IEntity> theEntities = GetEntities();
List<YourEntity> newList = theEntities.Cast<YourEntity>().ToList();