blog main page

Book Summary: Concurrency in C# Cookbook: Asynchronous, Parallel, and Multithreaded Programming 2nd Edition by Stephen Cleary - October 2019

In modern software systems, asynchronous, parallel, and multithreaded programming are essential. They allow applications to leverage hardware capabilities fully, deliver efficiency, and handle I/O-bound operations without delays. Concurrency in C# Cookbook covers these topics in depth. Embracing these paradigms is crucial for building robust, high-performance software systems that meet modern demands.

Read more →

Preventing Users from Accessing Unused Identity Endpoints

When you create an Asp.Net Core project with individual accounts option, by default, some identity endpoints are created for you. Some people explicitly create views for the endpoints and some do not touch that and let them remain as is. Usually, all identity endpoints are used rarely. In this case, the rest of the unused endpoints are still accessible by typing their routes despite not creating any link to them on the website. This situation poses a security challenge for the websites. Fortunately, some measures can be taken into consideration to address this challenge. This tutorial describes how you can do so by creating a middleware redirecting requests, pertaining to unused identity routes, to the website’s homepage.

Read more →

Dynamically Reading Data from Graph APIs

Sometimes for different reasons, you might not want to create a concrete type to use as the target type for the deserialization of an API call result. This tutorial illustrates how you can dynamically read data from the API result without mapping the result to a concrete type.

Read more →

Available Flights Aggregation System

Imagine you are tasked with making a flight ticket reservation website. The first page of the website should show a list of available flights from different flight providers aka airlines through receiving the data from their web APIs. Unfortunately, some flight providers might take considerable time to provide a list of available flights or cannot return flights immediately. In this situation, making our website’s users wait for a long period to see the available flights might hurt their user experience. This tutorial illustrates how you can design the available flights page with the mentioned constraints.

Read more →