Chcę zamówić przez moje wyniki z liczbą meczów w mojej linii ciągu.Podziel ciąg z LINQ
Więc tutaj jest kod
.ThenByDescending(p => p.Title.ToLower()
.Split(' ')
.Count(w => words.Any(w.Contains)));
Ale to przyniesie mi błąd i mówi, że LINQ nie można analizować Split
do SQL.
LINQ jednostki nie zna metody „system.string [] podziału (Char [])”, metoda i sposób ten nie może być tłumaczony na ekspresję przechowywania.
Jak mogę zaimplementować Split za pośrednictwem LINQ?
Na przykład dla tej tablicy musi zamówić w ten sposób
words = { "a", "ab" }
ab a ggaaag gh //3 matches
ba ab ggt //2 matches
dd //0 matches
Ale to spowoduje załadowanie wszystkich danych w pamięci i wykonanie LINQ do transformacji obiektów przeciwko niemu, prawda? – abatishchev
Tak, to prawda. Optymalnie możesz zastosować warunki w klauzuli where przed wywołaniem 'AsEnumerable'. nie możesz tego zrobić bez przyprowadzania obiektów do pamięci. –
Domyślam się, że zawiesi się z dużymi tabelami. Zgadzam się z abatishchev. –