#434 .NET 7 Networking Improvements

Let's kick off the festive season with a fairly chunky newsletter today. 🎄

.NET 7 Networking Improvements

Introducing new networking features in .NET 7 including HTTP space, new QUIC APIs, security, WebSockets, and more!

Use signNow's eSignature API to implement custom document flows that require legally binding signatures (sponsor)

Enhance user experience on your website or mobile app with signNow’s powerful eSignature API. Easily send documents for signature, request payments, create reusable templates with fillable fields, and track the status of documents in real-time with signNow. Create your sandbox account today and test signNow API for free!

Is the regression in GC or something else?

When you change your product to run with one version of .NET to another, sometimes there’s a regression in memory. This could show up as heap size increases, GC pause increases (either individual GC pause increase and/or total GC pause increase), or GC CPU time increases.

Why Byte Arrays Are A Bad Idea When Dealing With Large Data

First off, I want to detail a win: The changes I am about to describe saved 5GB of RAM from a total of 6GB when dealing with a 350MB file.

Refactoring Bloated Controllers with [FromService]

Instead of use the Service Locator pattern to tidy up your ASP.NET MVC controllers, consider using the [FromService] attribute to provide even greater cleanliness and separation of concerns to your classes.

Code Optimization using Span

In this article, we will look at a specific code optimization feature called Span and what it can do to improve the performance of your code.

Following with a few short news updates and nice wish list from Michael.

And we'll wrap up with some neat tips.

Custom Controls for WinForm's Out-Of-Process Designer

A rich user control ecosystem has always been one of the most important WinForms success guarantors. While the runtime support for Custom Controls remains unchanged, there are breaking changes with the design time support for the new Windows Forms (WinForms) .NET Designer.

Generate Strongly-Typed Resources with .NET Core

Visual Studio automatically handles generating strongly-typed resources but that doesn't work from VS Code or just the dotnet CLI. Here's how to fix it.

New ArgumentException and ArgumentOutOfRangeException helpers in .NET 8

Do you remember how .NET 6 introduced the ArgumentNullException.ThrowIfNull guard? And afterward, with .NET 7 we've got this excellent bit: ArgumentException.ThrowIfNullOrEmpty? Guess what, there might come some new handy additions for the upcoming .NET 8 iteration. So let's see what are those new changes and how they make the code simpler.

Prevent http requests to external services in unit tests

In this post, I describe how to detect and prevent http requests to external services from .NET unit tests.

newsletters

Would you like to become a sponsor and advertise in one of the issues? Check out our media kit and get in touch.