C#中如何将IEnumerable<ReferenceNumberDto>转换为IEnumerable<string>
解决方案
直接用LINQ的Select方法就能一步完成转换,比手动循环简洁优雅得多:
- 先确保代码文件顶部引用了
System.Linq命名空间(如果还没加的话):
using System.Linq;
- 一行代码完成转换:
// 假设yourDtoList是你从API获取到的IEnumerable<ReferenceNumberDto>结果 IEnumerable<string> referenceNumbers = yourDtoList.Select(dto => dto.ReferenceNumber);
如果需要过滤掉ReferenceNumber为null或空字符串的情况,可以再加个Where过滤:
IEnumerable<string> referenceNumbers = yourDtoList.Select(dto => dto.ReferenceNumber) .Where(num => !string.IsNullOrEmpty(num));
这种集合投影的写法是C#里处理这类转换的标准优雅方式,完全替代手动循环的冗余逻辑。
内容的提问来源于stack exchange,提问作者Zichen Ma
相关产品推荐
相关产品推荐

