// dev.hobby.pl

Rekordy, LINQ i async – quiz: zgadnij output 9 fragmentów

Streszczenie wpisu i odnośnik do pełnej treści u źródła.

Rekordy, LINQ i async – quiz: zgadnij output 9 fragmentów

TL;DR

Dziewięć krótkich fragmentów C#, w których wynik potrafi zaskoczyć nawet doświadczonych. Najdroższa pułapka to .Result kontra await: blokujące .Result opakowuje wyjątek w AggregateException, a await rzuca oryginalny, więc istniejące bloki catch mogą po cichu przestać działać.

W zestawie jest też wielokrotna enumeracja LINQ, bo zapytanie to przepis, a nie wynik i każde Count() czy foreach wykonuje je od nowa razem ze skutkami ubocznymi. Do tego operator ?., który przerywa całe wyrażenie razem z wyliczaniem argumentów, płytka kopia w with, różnica między new a override czy yield return z finally. Spróbuj zgadnąć wyniki, zanim zajrzysz do odpowiedzi sprawdzonych na .NET 10.

9 fragmentów nowoczesnego C#, które mylą nawet doświadczonych. Równość rekordów, płytka kopia with, wielokrotna enumeracja LINQ, .Result kontra await - zgadnij output, zanim zobacz...

Czytaj cały wpis u źródła

// powiązane wpisy