Skip to content

Sponsor: Do you build complex software systems? See how NServiceBus makes it easier to design, build, and manage software systems that use message queues to achieve loose coupling. Get started for free.

Learn more about Software Architecture & Design.
Join thousands of developers getting weekly updates to increase your understanding of software architecture and design concepts.


Follow @CodeOpinion

Derek Comartin

Migrating to SDK csproj

The SDK csproj files introduced with Visual Studio 2017 are a much needed improvement to the project files.    If you are creating a new .NET Core project or a .NET Standard library, either with VIsual Studio 2017 or the .NET CLI via dotnet new, it will generate the new SDK csproj.  What isn’t very clear to many is that you can use the new SDK format with full .NET Framework apps.  So this post will point out a really simple way for migrating to SDK csproj. SDK Benefits First, if you are unfamiliar with the new SDK csproj, here are… Read More »Migrating to SDK csproj

Microsoft Orleans Tutorial: Grains and Silos

This is the first post in the series were I’m actually getting into some code.  You will be able to follow along the journey of creating a practical web application using Microsoft Orleans.  This first post is really just setting the ground level to get familiar with the basics of Grains and Silos.  By the end of this post I’ll have a simple demo app that is a functioning ASP.NET Core as our client/frontend with a Orleans Silo hosting our Grains. Blog Post Series: Part 1 – Practical Orleans Part 2 – Grains and Silos Part 3 – Smart Cache… Read More »Microsoft Orleans Tutorial: Grains and Silos

Find MediatR Requests without Handlers

You’ve run into it.  MediatR throwing an InvalidOperationException when you didn’t have a matching handler for a request.   There’s a fairly simple solution to prevent this: Find MediatR Requests without Handlers. So here’s some quick code you can throw in a unit test to verify you don’t have any missing handlers. Find MediatR Requests without Handlers View the code on Gist. The above code uses reflection to get all the IRequest<>, RequestHandler<> and RequestHandler<,>.  Also worth mentioning it leverages Autofac for the IsClosedTypeOf method in the linq query. Usage Here’s a quick unit test that shows it’s usage for finding… Read More »Find MediatR Requests without Handlers