Take advantage of the in, out, and ref keywords to pass parameters to your C# methods in .NET and make your code more readable and maintainable.
Take advantage of the BitArray class in .NET 7 to perform bitwise operations on your data for improved performance.
Take advantage of FluentValidation to validate your model classes when working with minimal APIs in ASP.NET Core 6.
Take advantage of cancellation tokens in ASP.NET Core to allow long running operations to be cancelled gracefully and keep applications responsive.
Take advantage of minimal API filters in ASP.NET Core 7 to modify request and response objects or short-circuit the request processing pipeline.
ASP.NET Core configuration providers read configuration data from common sources such as JSON files and databases. But you can use other sources by creating custom configuration providers.
Entity Framework Core allows you to store and retrieve data to and from an in-memory database. It’s a quick and easy way to test your ASP.NET Core 6 web applications.
Take advantage of the PriorityQueue class in .NET 6 to create queues that work based on priority values you assign to the elements.
It’s easy to update your ASP.NET Core 5 code to ASP.NET Core 6. Learn how by following these examples.
Take advantage of trace listeners in ASP.NET Core 6 to add performance and debugging instrumentation to your applications with ease.
Take advantage of middleware in ASP.NET Core 6 to check the remote IP address of every request, and allow requests only from known and trusted addresses.
How to implement logging, read from the configuration system, and use dependency injection in minimal APIs in ASP.NET Core 6.
Take advantage of String.Create to create strings with no allocation overhead and improve the performance of your .NET 6 applications.
Take advantage of the GZip and Brotli compression methods to reduce the size of string data and improve performance in your .NET Core applications.
Take advantage of Azure Functions to run small pieces of code that can be triggered by events in the Azure cloud.
Take advantage of the NetArchUnit to enforce architecture rules in your application and ensure consistency of quality and standards.
Learn how you can track changes to entities while disconnected from the EF context in Entity Framework Core.
Take advantage of the IAsyncDisposable interface to dispose of objects in a non-blocking way and make your .NET applications more efficient.
Program and Startup are the main classes for configuring .NET applications. Learn how to use them in ASP.NET Core 6.
The minimal hosting model in ASP.NET Core 6 means having to write less boilerplate code to get your application up and running.
Explore three different ways to resolve dependencies in ASP.NET Core 6, using constructor injection, action method injection, or IServiceProvider instances.
Take advantage of best practices for using StringBuilder to reduce memory allocations and improve the performance of your string operations.
Learn the different ways to dispose of objects that implement IDisposable in ASP.NET Core.
Take advantage of the fast, easy, and lightweight Simple Injector inversion of control library to implement dependency injection in your ASP.NET Core MVC applications.
Take advantage of anti-forgery tokens in ASP.NET Core to protect users of your applications against cross site request forgery exploits.
Why loose coupling between components makes your .NET application more flexible, manageable, scalable, and testable.
Take advantage of string interpolation to incorporate variable substitution in formatted strings in C#.
Take advantage of the extension methods of the IEndpointConventionBuilder interface to implement lightweight services sans template or controller in ASP.NET Core 6.
Take advantage of Azure Storage queues to store large numbers of messages for asynchronous or even distributed processing.
Capture and pass correlation IDs in ASP.NET Core MVC 5 to track HTTP requests that flow through multiple back-end services.
Take advantage of the HTTP logging middleware in ASP.NET Core to log request and response information with flexibility and ease.
Take advantage of filters and request logging middleware in Serilog to reduce log verbosity and generate useful log summaries in your ASP.NET Core MVC applications.
Take advantage of filters to execute custom code at specific points in the request processing pipeline and avoid code duplication across actions.
Take advantage of base controllers to avoid dependency injection code duplication and enforce the DRY principle in ASP.NET Core MVC.
Take advantage of the friendly syntax of Razor View Engine to more easily create views from templates in ASP.NET Core MVC.
Take advantage of aspect-oriented programming using PostSharp to validate method parameters in C#.
Take advantage of closures in C# — including anonymous methods, delegates, and lambda expressions — to make your code robust, efficient, readable, and easier to maintain.
Learn how to use .NET Core and the AWS Toolkit for Visual Studio to build serverless functions and deploy them to AWS Lambda in the Amazon cloud.
Learn how to read request headers and work with optional data that is passed between the server and client in ASP.NET Core 5 applications.
Take advantage of Blazor, Microsoft’s answer to full-stack development, to build rich web apps with C# and .NET Core.
Take advantage of these best practices when working with strings in .NET Core for the optimal performance of your applications.
Take advantage of the SortedDictionary, SortedList, and SortedSet classes in C# to store key-value pairs and sort them based on keys.
Take advantage of lock-free, thread-safe implementations in C# to maximize the throughput of your .NET or .NET Core applications.
Take advantage of these best practices to avoid memory pressure and improve performance when working in .NET or .NET Core applications.
Learn two of the most important features in C# 9.0 to make your code more concise, readable, flexible, and efficient.
Take advantage of the new top-level statements in C# 9.0 to eliminate boilerplate code and make your programs more readable, maintainable, and efficient.
Take advantage of the new relational and logical patterns in C# 9.0 to make your code more readable, maintainable, and efficient.
Take advantage of static anonymous methods in C# 9 to improve the performance of your .NET applications.
Take advantage of LazyCache to improve the performance and scalability of your ASP.NET 5 Core applications in heavy load scenarios.
Take advantage of record types in C# 9 to build immutable types and thread-safe objects.