If you are like me you will have been using ILogger in DotNet Core for some time, but you’ll have noticed there are many ways to use the logger, I found this useful article by Rico Suter going over some recommendation and best practices.
Continue reading ILogger in .NET: best practicesConvert an enum to a list
Here are various was to convert enums to a lists
Get a List of Enum Members
The idea is to use Enum.GetValues()
method to get an array of the values of the constants in the enum. To get an IEnumerable<T>
of all the values in the enum, call Cast<T>()
on the array. To get a list, call ToList()
after casting.
SQL Record Count
The fastest way to perform a SQL record count is:
DECLARE @TableName sysname
SET @TableName = 'Log'
SELECT TBL.object_id, TBL.name, SUM(PART.rows) AS rows
FROM sys.tables TBL
INNER JOIN sys.partitions PART ON TBL.object_id = PART.object_id
INNER JOIN sys.indexes IDX ON PART.object_id = IDX.object_id
AND PART.index_id = IDX.index_id
WHERE TBL.name = @TableName
AND IDX.index_id < 2
GROUP BY TBL.object_id, TBL.name;
Unit Test Boilerplate Generator
I love this smart template generator, saves so much time and effort.
Generates a unit test boilerplate from a given C# class, setting up mocks for all dependencies. Right click an item in Solution Explorer and choose “Create Unit Test Boilerplate” . Supports Visual Studio Test, NUnit, xUnit and many mock frameworks.
https://marketplace.visualstudio.com/items?itemName=RandomEngy.UnitTestBoilerplateGenerator
Circuit Breaker
As defined by Polly “A circuit breaker detects the level of faults in calls placed through it, and prevents calls when a configurable fault threshold is exceeded”.
Continue reading Circuit BreakerFault tolerance using Polly
What is a Resilience Framework?
Polly is classed as a resilience framework. A resilience framework is a set of libraries that help an application to recover from transient or more extended failures in services or infrastructure upon which it depends. When recovery is not possible, the resilience framework will facilitate graceful degradation of your application.
Polly has been around for many years and has been tried and tested in many applications
http://www.thepollyproject.org/
The source code for Polly can be found on GitHub here:
https://github.com/App-vNext/Polly
Continue reading Fault tolerance using PollyThrottling/Rate Limiter for an API
Throttling and rate-limiting allow you to prevent abuse of your API and ensure that your API withstands large numbers of calls (including DoS and accidental loops). With Throttling, you can set a delay on calls after an SLA tier has been exceeded, slowing down the number of requests an API client is making.
Continue reading Throttling/Rate Limiter for an APIASP.NET Core Guidance
I came across a very good article on ASP.NET Core which I needed to bookmark, as it gives a clear and understandable guidance on keeping things working as efficiently as possible.
Continue reading ASP.NET Core GuidanceAsynchronous Programming the right way
There is a right way and a wrong way with programme Asynchronously, mainly due to the initial way Microsoft brought in Async programming was not best practise and they have now made changes to make it more effective and be more productive.
Continue reading Asynchronous Programming the right wayJSON Web Tokens (JWT)
Overview
JSON Web Tokens is an emerging standard. They are very close to their standardisation. IETF has taken care of that, and OpenID connect mandates the use of JSON Web token for all of the tokens that are exchanged in that protocol. this article gives you a little look, an overview of the purpose of security tokens, and, and what other types of tokens we have out there and where, where they are used. Then we have a look at the structure of a JSON Web Token, and then we’ll show you how easy it is to create and consume them using the Microsoft DotNet Core development framework.
Continue reading JSON Web Tokens (JWT)