Back when we were getting ready to ship .NET Core 2.0, I wrote a blog post exploring some of the many performance improvements that had gone into it. I enjoyed putting it together so much and received such a positive response to the post that I did it again fo…
First, the bad news: I’m afraid I won’t have a new article for you this Friday. My wife Dorte and I are going to take a long weekend in beautiful Bornholm, and I’ve been using this shortened work week to do some preparations for my next few months of writing. …
Update: Feb. 5 2020
The Let’s Encrypt CT logs are now included in approved log lists and are usable by all publicly-trusted certificate authorities.
Today we are announcing a new Certificate Transparency log called Oak. The Oak log will be operated by Let’s E…
Currently the runtime takes a lock surrounding external access to a class that contains any static constructor (whether written explicitly or implicitly). Those locks add up to substantial runtime ...
In this post, I go into detail about how data binding works in Blazor. I cover one-way binding, two-way binding and the various uses of the bind attribute.
A regular Roslyn contributor, Yair, asked for some pointers about C# 8.0’s nullability analysis on the gitter channel. I thought I’d expand on my reply and share it more broadly.
Default implementations in interfaces
With last week’s posts Announcing .NET Core 3.0 Preview 5 and Visual Studio 2019 version 16.1 Preview 3, the last major feature of C# 8.0 is now available in preview.
A big impediment to software evolution has been the fac…
devblogs.microsoft.com·Mads TorgersenC# Lead Designer, .NET TeamFollow Mads··2-3 minutesidesdotnet