c#

LINQ – Kolejne usprawnienia

Wprowadzenie LINQ również jest aktywnie rozwijane. Oprócz różnych usprawnień, zwiększających wydajność poszczególnych metod, pojawiają się także nowe rozszerzenia, które ułatwiają codzienną pracę. Chciałbym podzielić się z wami rozszerzeniami, które zostały dodane w ostatnich kilku wersjach .NET. Przegląd Wszystkie przykłady będziemy uruchamiać na podstawie poniższej kolekcji Chunk – metoda służąca do dzielenia kolekcji na mniejsze części. […]

Scoped ServiceProvider – Własna implementacja

Wstęp W poprzednim wpisie dotyczącym service lifetimes, na przykładzie Web API, opisałem jak są tworzone zależności typu Scoped – w kontekście requestów HTTP. A co, jeśli nie używamy HTTP? Otóż można wprowadzić własną implementację Scope, w zależności od tego, jak nasza biblioteka/aplikacja go definiuje. Do tego posłużą nam klasy i metody dostarczone przez IServiceCollection oraz

Pattern Matching – potężne zmiany w c#

Wstęp Pattern Matching to jedna z najciekawszych zmian, jakie zostały dodane do C#. Drastycznie zmienia podejście do sprawdzania warunków w kodzie. Zmiany, które się dzieją, trwają cały czas, ponieważ z każdą kolejną wersją języka są wprowadzane nowe usprawnienia. Przykłady użycia Pierwsze zmiany, jakie się pojawiły, to prosty sposób zmiany sposobu rzutowania typów. W nowym podejściu

Immutability w .NET

Wprowadzenie Dzisiaj chciałbym pokrótce opisać mechanizmy immutability, które dostarcza .NET. Skupię się również na zmianach, jakie pojawiły się wraz z wprowadzeniem .NET Core. Immutability to ciekawy temat, a młodzi programiści najczęściej spotykają się z nim po raz pierwszy, ucząc się, jak działa String w C#. Dlaczego Immutability jest tak istotne? Im więcej kontroli mamy nad

HttpClient w .net

Kolejną rzeczą, która imponuje podczas całej transformacji z .NET Framework do .NET Core i najnowszych wersji .NET, jest fakt, że nie tylko dodawane są nowe funkcjonalności, ale jednocześnie adresowane są problemy ze starymi rozwiązaniami. Bardzo dobrym przykładem jest klasa HttpClient. Typowe użycie w przeszłości wyglądało tak: tworzymy nową instancję, opakowujemy ją w using i ruszamy

CancellationToken – Użycie na przykładzie WebApi

Dzisiejszy post będzie dotyczył wykorzystania CancellationToken w C#. Uważam, że najłatwiej zrozumieć jego działanie na przykładzie zapytań realizowanych za pomocą Web API. Czym jest CancellationToken? To mechanizm, który umożliwia kontrolowanie przerwania (długo trwających) operacji. Działa podobnie do sygnału, który informuje kod o konieczności anulowania wykonywanego żądania. Web API ma wbudowane wsparcie dla CancellationToken. Najprostszym sposobem

Zmiany w c# na przestrzeni lat

Hej! Jeśli przez ostatnie parę lat utknąłeś w starszych wersjach .NET lub języka C#, to ten post będzie idealny dla Ciebie! Jeśli jesteś w miarę na bieżąco, może to być dobra okazja, żeby odświeżyć informacje. Uważam, że zmiany, które zaszły w .NET przez ostatnie lata, to prawdziwe mistrzostwo i coś, czego platforma bardzo potrzebowała. Sam

Dependency Injection – Services Lifetime

.NET dostarcza wbudowane klasy do zarządzania zależnościami, ServiceCollection oraz ServiceProvider. Klasa ServiceCollection dostarcza metody (głównie extension methods) do rejestracji typów, interesują nas trzy z nich: Transient – instancja jest tworzona za każdym razem kiedy jest requestowana. Scoped – instancja jest tworzona w danym zakresie. W naszym przykładzie używamy Web API, gdzie scope jest realizowany w

Fody + INotifyPropertyChanged

Witajcie, dzisiejszy post będzie poświęcony bibliotece Fody. Biblioteka ta służy do modyfikowania kodu IL przy kompilacji. Sama biblioteka jest praktycznie bezużyteczna, do działania potrzebne są pluginy, można korzystać z napisanych już pluginów lub pisać swoje. Ja przedstawię przykład użycia biblioteki z pluginem NotifyPropertyChanged, z której korzystam w projekcie Xamarin.Forms ale przykład nie będzie na projekcie

ActionResult – ASP.NET Core Web API

W Web Api przy użyciu dotnet core dane mogą być zwrócone na kilka sposobów. Zwracany typ Pierwszy, najprostszy sposób, metoda w kontrolerze zwraca dane typu np. IEnumerable<string>. Najszybsze i najprostsze rozwiązania, niestety, jeśli chcemy zwrócić jakąś inną odpowiedź http niż OK to za bardzo nie mamy takiej możliwości. Korzystając na przykład z return BadRequest() dostaniemy

Scroll to Top