Kategoria: Linq

Flattern W tym wpisie zobaczymy użycie metod SelectMany w LINQ. 

SelectMany w pewnym sensie jest odwrotnością GroupBy. GroupBy bierze jedną kolekcję i transformuje to odpowiednio na kolekcje, w której elementy mają swoje swoją kolekcję.

Natomiast SelectMany spłaszcza takie kolekcje w kolekcji do jednej scalonej listy elementów

Ponownie wyobraź sobie, że mamy kolekcje wpisów na bloga. Tym razem jednak mamy także definicję samego bloga. Będziemy mieć dwa blogi o przemawianiu i o programowaniu.

Group By Jak więc GroupBy w LINQ grupuje dane w C#. Zacznijmy od podstaw, a potem spójrzmy na zaawansowane przykłady. 

Group By pozwala na szybkie grupowanie kolekcji połączony ze sobą danych poprzez określoną właściwość. 

Pogrupowane dane staje się osobną kolekcją, które nie są zazwyczaj typem anonimowy, a interfejsem generycznym IGrouping<K,V>

Do przykładu potrzebujemy jakiegoś modelu. Oto model wpisu na blogu.

WhereW .NET istnieje wiele technik do iteracji i wybierania danych z kolekcji. Najlepszym wynalazkiem C# jest LINQ.

Zostałem poproszony o stworzenie prostego przykładu LINQ, który by po prostu pobierałby elementy kolekcji w zależności od naszych potrzeb. Nie mam dużo czasu by się rozpisywać więc pomyślałem czemu nie.

Ten wpis jest przeznaczony całkowicie dla początkujących.

RandomKiedyś na blogu zrobiłem wpis o procedurze SQL Server, która zwraca losowe znaki.

Jak stworzyć podobny generator losowych znaków w C#?

Istnieje wiele możliwości.

ConvertAllSłyszałeś o metodzie ConvertAll, bo ja nie xD . Jak sama nazwa metody wskazuje ta metoda konwertuje wszystkie elementy kolekcji na inny typ danych. Zwykle do utworzenia nowej kolekcji używam pętli foreach. LINQ daje nam jednak alternatywę i krótszą składnie. Rodzi się jednak pytanie czy w ogóle ta metoda jest nam potrzebna, gdyż ten sam rezultat możemy otrzymyać używając metody Select

CSV Linq

W pracy dla testowania jednej aplikacji “X” musiałem szybko napisać kod, który tworzyłby plik CSV na bazie danej kolekcji. Miałem ułatwione zadanie, ponieważ znałem kolekcje i znałem jej elementy, znałem także właściwości elementów. Jednym słowem napisanie takiego programu nie zajęło mi dużo czasu.

W trakcie tego zadania napisałem prostą metodę rozszerzeniową LINQ , która na bazie kolekcji , która dziedziczy po interfejsie IEnumerable<T> pisze jedną linijkę pliku CSV. Metoda ta była bardzo pomysłowa, ponieważ jest uniwersalna i działa nie tylko dla tablicy elementów . Może to być lista, bądź inna kolekcja musi ona jedynie dziedziczyć po interfejsie IEnumerable<T> .

Wszystkie Kategorie