

Joydip Kanjilal
Contributor
Joydip Kanjilal is a Microsoft Most Valuable Professional (MVP) in ASP.NET, as well as a speaker and the author of several books and articles. He received the prestigious MVP award for 2007, 2008, 2009, 2010, 2011, and 2012.
He has more than 20 years of experience in IT, with more than 16 years in Microsoft .Net and related technologies. He has been selected as MSDN Featured Developer of the Fortnight (MSDN) and as Community Credit Winner several times.
He is the author of eight books and more than 500 articles. Many of his articles have been featured at Microsoft’s Official Site on ASP.Net.
He was a speaker at the Spark IT 2010 event and at the Dr. Dobb’s Conference 2014 in Bangalore. He has also worked as a judge for the Jolt Awards at Dr. Dobb's Journal. He is a regular speaker at the SSWUG Virtual Conference, which is held twice each year.


How to use Fluent Assertions in C#
When unit tests fail, they should clearly explain why. Take advantage of the Fluent Assertions library to write unit test methods that are simple, readable, concise, and expressive.

How to handle null values in C#
Null pointer exceptions are no fun. You can avoid them and keep your code clean and maintainable by using these techniques to elegantly handle null values in C#.

How to use the is and as operators in C#
Take advantage of the is and as operators in C# to perform casting operations elegantly and write code that is well structured, concise, and maintainable.

How to use API keys to secure web APIs in ASP.NET Core
Take advantage of API key authentication to control the access of applications and services to your Web APIs in ASP.NET Core.

How to work with Azure Key Vault in .NET Core
Azure Key Vault is a safe and secure place to store the tokens, keys, passwords, certificates, and other sensitive data used in your .NET Core applications. Here’s how to work with it in C#.

How to use EventCounters in .NET Core
Take advantage of EventCounters in .NET Core to gain insights into your application’s performance in real time.

How to avoid spaghetti code in C#
Spaghetti is good eating but bad programming. Follow these 10 best practices to keep your C# code clean, lean, and easy to maintain.

Composition vs. inheritance in OOP and C#
Understand the key concepts behind composition and inheritance that allow you to build reusable and flexible types in your .NET applications.

How to use advanced Dapper features in ASP.NET Core
Take advantage of stored procedures, query pagination, query caching, and other advanced Dapper feature to simplify data access and ensure high performance.

How to use factory-based middleware activation in ASP.NET Core
Factory-based middleware activation is a more flexible and dynamic approach to configuring and activating middleware components. Here’s how to take advantage of it in ASP.NET Core 7.

How to use the rate limiting algorithms in ASP.NET Core
Learn how to use the fixed window, sliding window, token bucket, and concurrency algorithms in ASP.NET Core 7 to protect your applications and APIs against malicious attacks or overuse.

How to use response compression in ASP.NET Core
Take advantage of response compression middleware in ASP.NET Core to reduce bandwidth requirements and improve the responsiveness of your apps.

How to use request decompression in ASP.NET Core 7
Take advantage of the request decompression middleware in ASP.NET Core 7 to enable your API endpoints to accept requests that contain compressed content.

Applying the DRY, KISS, and YAGNI principles in C#
If you don’t repeat yourself, keep it simple, and implement only the functionality you really truly need, your C# code will be cleaner, simpler, and much easier to maintain.

How to use the unit of work pattern in ASP.NET Core
Take advantage of the unit of work design pattern to build flexible, extensible, and reusable data access layers in your ASP.NET Core applications.

Get started with the rate limiting middleware in ASP.NET Core 7
Take advantage of the new rate limiting middleware in ASP.NET Core 7 to protect against malicious attacks on your applications and ensure equitable use of server resources.

How to work with EF Core migrations in ASP.NET Core
Take advantage of migrations in EF Core to manage database schema changes over time and keep them in sync with the data models of your ASP.NET Core applications.

How to handle errors in minimal APIs in ASP.NET Core
How to use the exception handling middleware in ASP.NET Core to handle errors gracefully in your minimal API applications.

How to send emails using SendGrid in ASP.NET Core
Take advantage of SendGrid to integrate reliable and scalable email into your ASP.NET Core applications. Here’s how.