Я не смог найти подобного примера. В моей БД у меня есть столбец массива string[]
, где они разделены запятой. Пример из 3 строк:
id1: apple, orange, banana, kiwi
id2: orange, kiwi
id3: lemon, pineaple, kiwi
Из этого списка мне нужно извлечь с помощью LINQ Список отдельных строк: apple, orange, banana, kiwi, lemon, pineapple
.
Мне удалось это сделать , но не чисто LINQ , но при использовании также foreach
:
public async Task<List<string>> GetFruitDetailedType()
{
List<string> all = new List<string>();
var qry = await GetFruitsQueryable().Select(v => v.DetailedType).ToListAsync();
foreach (var item in qry)
{
foreach(var type in item)
{
all.Add(type);
}
}
return (from w in all select w).Distinct().ToList();
}
Есть ли способ сделать это только с помощью LINQ , без вызова объекта со всеми сущностями?
ПРИМЕЧАНИЕ: используется EF Core 2.