我有一个具有“ ean”和“ eanA”属性的对象列表。
这有效:

List<string> eanList = new List<string>();
eanList.AddRange(toGroup.Where(a => a.ean.Length > 0).Select(b => b.ean).ToArray());
eanList.AddRange(toGroup.Where(a => a.eanAlt.Length > 0).Select(b => b.eanAlt).ToArray());

但是如何在一个查询中做到这一点? (我想使用SelectMany,但找不到方法)

最佳答案

要使用SelectMany,您需要将eaneanAlt转换为首先列出:

  eanList = toGroup
       .SelectMany(a => new List<string> { a.ean, a.alt })
       .Where(s => !string.IsNullOrEmpty(s))
       .ToList();

10-06 14:59