Quantcast
Channel: Andrew Lock | .NET Escapades
Browsing all 743 articles
Browse latest View live
↧

Image may be NSFW.
Clik here to view.

Testing your incremental generator pipeline outputs are cacheable: Creating a...

This is the tenth post in the series: Creating a source generator. Part 1 - Creating an incremental generator Part 2 - Testing an incremental generator with snapshot testing Part 3 - Integration...

View Article


Image may be NSFW.
Clik here to view.

Understanding C# 8 default interface methods

In this post I provide an introduction to default interface methods, how they work at a high level, and their typical uses. Finally, I discuss some of the sharp edges on the feature: things to watch...

View Article


Image may be NSFW.
Clik here to view.

Using default interface methods for performance gains in IHeaderDictionary

In this post I show an example of how the C# 8 feature, default interface methods, can be used to improve performance. I describe a pull request to ASP.NET Core that shows how default interface...

View Article

Image may be NSFW.
Clik here to view.

8 ways to set the URLs for an ASP.NET Core app

By default, without additional configuration in .NET 8, ASP.NET Core apps listen on the URL http://localhost:5000. In this post I show 8 different ways to change this URL. This is an update to a post...

View Article

Image may be NSFW.
Clik here to view.

Using named pipes with ASP.NET Core and HttpClient

In this post I describe Windows named pipes, what they are, the scenarios where they're useful, how to use them with ASP.NET Core, and how to call a named pipe ASP.NET Core app using HttpClient. What...

View Article


Image may be NSFW.
Clik here to view.

Using Unix domain sockets with ASP.NET Core and HttpClient

In this post I describe Unix domain sockets, what they are, the scenarios where they're useful, how to use them with ASP.NET Core, and how to call a UDS ASP.NET Core app using HttpClient. For those...

View Article

Image may be NSFW.
Clik here to view.

Using Unix domain sockets with ASP.NET Core and HttpClient

In this post I describe Unix domain sockets, what they are, the scenarios where they're useful, how to use them with ASP.NET Core, and how to call a UDS ASP.NET Core app using HttpClient. For those...

View Article

Image may be NSFW.
Clik here to view.

An introduction to the heap data structure and .NET's priority queue

In this post I provide an introduction to the heap data structure, describe why it's useful, and show how it's used in .NET's PriorityQueue type. What is a heap? You may be familiar with the phrase...

View Article


Image may be NSFW.
Clik here to view.

Behind the implementation of .NET's PriorityQueue

In my previous post I provided an introduction to the heap data structure and described how one of its main usages is in building a priority queue, such as the .NET type PriorityQueue. In this post, I...

View Article


Image may be NSFW.
Clik here to view.

Implementing Dijkstra's algorithm for finding the shortest path between two...

In a previous post I provided an introduction to the generic heap data structure and how it's used by the .NET PriorityQueue type. In the subsequent post I discussed the implementation of some...

View Article

Image may be NSFW.
Clik here to view.

Syncing a git branch between Windows and WSL filesystems

In this post I show how you can work on a git branch with a repository checked out in Windows, and then sync that branch to another git folder in WSL, without having to push to a remote server like...

View Article

Image may be NSFW.
Clik here to view.

Rendering Math in HTML: MathML, MathML Core, and AsciiMath

In this post I discuss some lesser known HTML elements: the MathML (and MathMLCore) specification, and show how these can be used to render math equations in HTML. Finally I discuss the AsciiMath...

View Article

Image may be NSFW.
Clik here to view.

Hacking together an AsciiMath parser for .NET

In my previous post, I gave a brief introduction to MathML, the HTML elements for displaying mathematical equations and notation. At the end of that post I showed AsciiMath, an easy-to-write markup...

View Article


Image may be NSFW.
Clik here to view.

Creating a .NET AsciiMath parser and using it in a Markdig extension

In this post I describe how and why I ported an AsciiMath to MathML converter to .NET, and how I created a small extension to Markdig that uses the new AsciiMath parser. AsciiMath, MathML and...

View Article

Image may be NSFW.
Clik here to view.

An introduction to primary constructors in C#12

In this post I introduce the primary constructors feature that debuted in C#12 along with .NET 8. I describe the various ways to use them and show how they work behind the scenes. The first appearance...

View Article


Image may be NSFW.
Clik here to view.

Thoughts about primary constructors: 3 pros and 5 cons

In my previous post I provided an introduction to primary constructors in C#12. In this post I describe some of the ways I like to use primary constructor and also some of the things I don't like...

View Article

Image may be NSFW.
Clik here to view.

Blocking primary constructor member capture using a Roslyn Analyzer

In my previous posts I talked about primary constructors, how they work, and some of the things I like and dislike about them. In this post I show a Roslyn analyzer that you can add to your project to...

View Article


Image may be NSFW.
Clik here to view.

Conditionally skipping a trigger job in GitLab based on a previous job

In this post I provide the solution to a very specific situation in GitLab: You have a job that calculates various variables for the current pipeline. You want to use those variables to decide whether...

View Article

Image may be NSFW.
Clik here to view.

Introducing collection expressions in C#12: Behind the scenes of collection...

This is the first post in the series: Behind the scenes of collection expressions. Part 1 - Introducing collection expressions in C#12 (this post) This series take an in-depth look at collection...

View Article

Image may be NSFW.
Clik here to view.

Exploring the generated code: List and fallback cases: Behind the scenes of...

This is the second post in the series: Behind the scenes of collection expressions. Part 1 - Introducing collection expressions in C#12 Part 2 - Exploring the generated code: List<T> and...

View Article
Browsing all 743 articles
Browse latest View live