我要将List转换为列表
List<DTO?> items = new List<DTO?>(); List<DTO> notNullItems = items.Where(c=>c!=null).ToList();
但这不管用!
不匹配目标类型
发布于 2022-03-30 14:14:37
您可以使用零宽恕算子 (!)。
!
如果在!之后添加.ToList(),您将得到知道它不是null的C#编译器:
.ToList()
List<DTO> notNullItems = items.Where(c => c != null).ToList()!;
这将比.Cast<DTO>()具有更好的性能,因为它不调用方法。但我们说的可能是纳秒。
.Cast<DTO>()
请注意,这只适用于类。如果您使用的是可空,那么您将不得不使用.Select(c => c.Value)。
.Select(c => c.Value)
https://stackoverflow.com/questions/71678152
相似问题