Thursday 

Room 3 

17:40 - 18:40 

Session (60 min)

What's Inside: A .NET assembly! (and how does Hot Reload change it?)

We all create .NET assemblies every day, but you might not know what they actually look like inside. I certainly didn't, and in fact deliberately avoided knowing, because I liked C# too much. Turns out, once I was forced to learn for my job, it's actually super interesting, and I think it's very informative to talk about how it works under the hood, why some things don't work, what things might work in future, etc.

.NET
Programming Languages
Tools

At the same time, I'll cover how Hot Reload broadly works, and manages to efficiently change a .NET assembly without actually modifying the DLL file, let alone stopping your application or going through a full build.

This session will be a dive into the details of .NET DLLs, how they work, how Roslyn compiles deltas for them, and how the runtime applies them. All of that wonderful information you've always wanted to know, but were too afraid to ask! You'll learn absolutely nothing about AI, JavaScript, microservices, or anything else your company actually uses, but at least you'll have a better understanding of what's in a .NET DLL, and a better idea of ILSpy is showing you next time you run it.

David Wengier

David Wengier

David is a Principal Software Engineer at Microsoft, working to make your Razor and C# tooling experience better.

A developer for the last 20+ years, David has had experience in lots of different languages and environments, from cgi-bin scripts in Perl, to genetic algorithms in VB3, and Windows applications in COBOL. A series of terrible decisions, clearly, but he learnt in the end and now spends most of his time developing with .NET in C#, and enabling other developers to do the same.

David is mostly interested in C#, good design and Lego. He can be found on about a dozen different slacks, discords and fledgling social media networks.