- Loading...
Sponsored by Dometrain Courses—Get 30% off Dometrain Pro with code ANDREW30 and access the best courses for .NET Developers

My new book ASP.NET Core in Action, Third Edition is available now! It supports .NET 7.0, and is available as an eBook or paperback.

Using the YamlDotNet source generator for Native AOT
In this post I show how you can use the YamlDotNet source generator to do strongly-typed serialization and deserialization, even in Native AOT apps…

Cross-Origin-Embedder-Policy: securing embedded resources
Understanding cross-origin security headers - Part 3
In this post I discuss the Cross-Origin-Embedder-Policy, the requirements it places on your resources, and why it's required for some JavaScript APIs…

Cross-Origin-Resource-Policy: preventing hotlinking and XSSI attacks
Understanding cross-origin security headers - Part 2
In this post I describe how to use the Cross-Origin-Resource-Policy to block cross-origin requests that would normally be allowed, such as in <img> tags…

Cross-Origin-Opener-Policy: preventing attacks from popups
Understanding cross-origin security headers - Part 1
In this post I describe the vulnerabilities in window.opener and window.open() and how to protect yourself with Cross-Origin-Opener-Policy…

Recent updates for NetEscapades.EnumGenerators: interceptors!
In this post I describe the experimental interceptor support in NetEscapades.EnumGenerators that replaces ToString() calls with ToStringFast() automatically…

Is the result pattern worth it?
Working with the result pattern - Part 4
In this post I discuss some of the pros and cons around using the result pattern in .NET, and describe some of the arguments I've heard on either side…

