26 Jul 2023
Correctly formatted code does not guarantee your codebase is of high quality, but the opposite is true: poorly formatted code almost always guarantees you are working with a bad, unprofessional codebase.
Even though you can probably get away with minor stylistic imperfections here and there in small projects, where only a few developers are working together, the bigger the team the more strict everyone should be about the codebase.
Not only does it make code easier to navigate and understand, but it also prevents merge conflicts and lays the foundation of high-quality code we all want to work with.
In this article we explore how we can fail bitbucket pipeline builds if there are formatting issues in .NET code and thus ensure our projects have only formatted code checked in.
>>> Continue reading <<<
21 Jul 2023
Using .ConfigureAwait(false)
is considered good practice for asynchronous .NET Framework code in general and legacy ASP.NET in particular.
Sometimes people (and tools) insist on using .ConfigureAwait(false)
in ASP.NET Core applications too.
The purpose of this article is to provide a set of useful links and quotes to show that .ConfigureAwait(false)
does nothing in ASP.NET Core and therefore can be omitted in web applications utilizing modern .NET versions.
>>> Continue reading <<<
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.
UDPATE (4/20/2024): if you encounter this error with .NET 8 - read my new post addressing this issue.
>>> Continue reading <<<