c# – 将填充的列表转换为列表
发布时间:2020-12-15 06:51:38 所属栏目:百科 来源:网络整理
导读:我有一个列表 BaseClass与其中的成员.我想将列表(及其所有成员具体)转换为List ChildClass类型,其中ChildClass继承BaseClass.我知道我可以通过foreach获得相同的结果: ListChildClass ChildClassList = new ListChildClass();foreach( var item in BaseClas
我有一个列表< BaseClass>与其中的成员.我想将列表(及其所有成员具体)转换为List< ChildClass>类型,其中ChildClass继承BaseClass.我知道我可以通过foreach获得相同的结果:
List<ChildClass> ChildClassList = new List<ChildClass>(); foreach( var item in BaseClassList ) { ChildClassList.Add( item as ChildClass ); } 但是有没有更好的做法呢?注意 – 这是在WP7平台上完成的. 解决方法
如果您真的确定所有项目都是可浇注的,您可以执行此操作:
ChildClassList = BaseClassList.Cast<ChildClass>().ToList(); 如果BaseClass项不能转换为ChildClass,您当前的代码将添加null.如果这是真的你的意图,这将是相当的: ChildClassList = BaseClassList.Select(x => x as ChildClass).ToList(); 但我宁愿建议这个,包括类型检查,并将跳过不符合的项目: ChildClassList = BaseClassList.OfType<ChildClass>().ToList(); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |