14 Jul 2023

A Swagger file is a json file containing API definition which allows you to consume an API without manually writing your own request/response classes or HttpClient code. Instead, you are getting an automatically generated typed client and corresponding classes.
Since Swagger file is an implementation of the OpenAPI standard, people can refer to it as OpenAPI file, definition or specification.
>>> Continue reading <<<
03 Jul 2022

Nullable reference types - a comparatively new feature of C# which helps (to some extent) to deal with probably the most common bug - NullReferenceException
. The feature was introduced in C# 8.0, and the main idea behind it is a new compiler analyzer which produces warnings if you try to access (or a better word - dereference) potentially nullable reference type.
For old projects you can enable this feature by adding <Nullable>enable</Nullable>
line to .csproj file. For new ASP.NET projects this feature is enabled by default, but you can disable it by removing the corresponding line from .csproj.
>>> Continue reading <<<
08 Jun 2022

I have come across a rather nasty bug: after a successful build of our ASP.NET 5 app, we generate a swagger file using Swashbuckle.AspNetCore.Cli
tool with dotnet swagger tofile
command. This is set up as a postbuild event. Unfortunately, it doesn’t work on my machine, but it does work completely fine on my colleague’s machine.
>>> Continue reading <<<
02 Jan 2019
That’s it. Well, this is not very efficient, and shouldn’t be used in real-world scenarios,
but it shows how powerful LINQ can be.
We compare this code with imperative version and even with Haskell below.
>>> Continue reading <<<
27 Dec 2018

Open in full resolution.
More mind maps which can be useful for .NET learners.
LINQ is an important topic, and understanding its concepts is crucial.

Open in full resolution.
LINQ is built around IEnumerable<T>
and IEnumerator<T>
interfaces.
It is implemented as extension generic methods which allows us to use it
with all collection classes.
>>> Continue reading <<<