Understand the pros and cons of the .Net Framework's various native classes for working with HTTP requests and responses
Take advantage of ASP.NET Core middleware to customize your application’s handling of HTTP requests and responses.
This article provides a know how on the Interpreter pattern and how it can be implemented. The code examples are provided in C#.
Take advantage of asynchronous web pages in ASP.Net to improve the responsiveness and scalability of your applications
Take advantage of feature toggles to manage application features without having to maintain multiple source code branches
Two approaches to solving temporal coupling, a 'design smell' that results when members of a class must be invoked in a specific sequence
Take advantage of the Memento design pattern to store and restore an object's state to support undo or rollbacks in your application.
Take advantage of custom exception classes to extend error handling or add meaningful information to the errors thrown by your .Net applications
Learn the causes of memory leaks in .Net, how to detect them, and how avoid them in your applications
Take advantage of ASP.Net Web API authorization filters to authorize incoming requests to your web API
It's easy to create a custom logging framework to log your .Net application's errors and events to a flat file, a database, or the event log
Take advantage of ASP.Net Core's flexible, customizable and extendable Logging API to plug in a custom logger with ease
How to use the InMemory provider in Entity Framework Core to test your methods without hitting the database or using fakes and mocks
Take advantage of dependency injection in ASP.NET Core to plug in components and improve code maintenance and testability
Take advantage of in-memory caching in ASP.NET Core to improve the performance and scalability of your application
How to take advantage of the volatile keyword in C# to ensure that concurrent threads get the latest value of an object
Use lazy initialization to save resources and improve performance by deferring the initialization of expensive objects until they're requested
Get started with documents and collections in the popular, open source, NoSQL database using C#
Take advantage of the open source search engine using C# to search and analyze your application’s data in real time
Boost application performance by using the object pool design pattern to recycle objects that are expensive to create
Take advantage of Akka.Net to build concurrent, fault tolerant, event-driven applications using the high-level abstractions of the actor model
Techniques include using cache-friendly structs provides a huge performance gain
Take advantage of the fast and scalable open source message broker to meet high-volume data processing challenges on Windows
Understand why the large object heap in .Net is prone to fragmentation and how to use memory more efficiently
Take advantage of a custom message handler to log request and response metadata in Web API for debugging, tracing, and inspection of the incoming and outgoing calls
Take advantage of NBench to analyze code throughput, memory allocations, and GC overhead in your .NET application
A custom wrapper for your Web API responses can provide meaningful information and ensure consistency regardless of success or failure.
Take advantage of HTTP PATCH to partially update resources and transfer less data over the wire
Take advantage of the mediator design pattern to promote loose coupling and simplify the coding of object interactions
Take advantage of the built-in correlation IDs in Web API to track HTTP requests that flow through multiple back-end services
Knowing how thread injection works in .Net is key to allowing your ASP.Net application to make the best use of system resources
Take advantage of RabbitMQ, an open source, fast message broker to store and retrieve messages in your applications
The template method design pattern allows you to define the skeleton of an algorithm in a base class and defer the details to subclasses
Redis is an open source, fast, feature rich, in-memory caching engine that can be used to store and retrieve data in your applications
Cross-Origin Resource Sharing in ASP.NET Web API allows cross-domain access to your Web API methods.
The prototype design pattern enables you to create new instances by copying existing instances to avoid the overhead involved in creating objects that can consume more resources
Understand the differences between Task.WaitAll and Task.WhenAll methods and when to use which in your application.
NLog can log your app data and create logs regardless of the size and complexity of your application.
Log4net is an easy to use, reliable, fast, popular, extensible, and open source library for logging data to various configured log targets
HTTP modules intercept incoming requests and inject pre-processing logic in the ASP.Net request processing pipeline
You can use covariance and contravariance to provide polymorphic extension to delegates, arrays, and generics in C#. Here’s how.
You can increase the performance and scalability of your client-server applications by using asynchronous sockets. Here’s how.
Take advantage of a custom task scheduler to provide added functionalities over the default task scheduler and manage how tasks are scheduled in .Net
Take advantage of the various ways to version your Web API to make it more flexible and adaptable to changes while keeping the functionality intact
Take advantage of sessions to store and manage information pertaining to a logged user's session.
Take advantage of Windows services to build applications that you want to run in the background or execute automatically at predefined intervals of time.