我正在尝试使用 LINQ 迭代对象的 IEnumerable,并将每个对象的某个属性提取到该属性类型的 IEnumerable 中。
我目前正在使用 SelectMany LINQ 表达式执行此操作,而不是返回 IEnumerable<string>
我想要的(因为属性是一个字符串),它返回一个 IEnumerable<char>
var propertyValues = objectCollection.SelectMany(o => o.Value);
我错过了什么?
最佳答案
如果返回 IEnumerable<char>
那么就是这样。我猜你想使用 Select() 而不是 SelectMany(),我猜它会将一堆字符串展平为 IEnumerable<char>
。 .如果您可以发布更多代码来显示 objectCollection
中的内容我们或许可以提供更多帮助。
编辑
更多代码来说明我的观点
List<string> stringList = new List<string>();
stringList.Add("string1");
stringList.Add("string2");
IEnumerable<char> chars = stringList.SelectMany(x => x);
关于c# - 使用 LINQ 表达式从 POCO 的 IEnumerable 中检索 IEnumerable 的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5990935/