Skip to content

Sponsor: Using RabbitMQ or Azure Service Bus in your .NET systems? Well, you could just use their SDKs and roll your own serialization, routing, outbox, retries, and telemetry. I mean, seriously, how hard could it be?

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

Specify the C# Version to use in your Projects

I always wondered how you could specify the C# version in your project.  One of the cool new features in C# 7.1 that I’ve been looking forward to is the “Async Main“. But to be honest, I had no idea how, even when C# 7.1 is released, how I would be able to start use it and its new features. A few days ago I stumbled upon this an issue in the Microsoft Docs repo. The C# build system now includes a node inside a csproj file that controls which version of C# the compiler should follow. Visual Studio With… Read More »Specify the C# Version to use in your Projects

Converting a Library to NetStandard

I have a tiny library that I wanted to convert to .NET Standard Library.  After all was said and done, I figured it might be useful to even point out some minor things I had to deal with along the way.  So here’s a mini guide on converting a library to netstandard. .csproj conversion First was I was going to convert the older csproj to the new style used for NetStandard and NetCoreApp. You have few different options here: Create a new NetStandard Library project and copy all the files over. Rewrite the existing csproj file Use a conversion tool… Read More »Converting a Library to NetStandard

Testing a Cake Addin

In my last post I created a simple Cake Addin that was for replacing appSettings in a app/web.config.  As promised, one of the other aspects of a creating a cake adding will be writing tests.  So let’s cover how you can get start testing a Cake addin. ICakeContext Since we are creating an extension method on the ICakeContext, we need an implementation we can use to test.  One solution to this is to create a fake. Ultimately what you need to do is implement the aspects of the ICakeContext you use within your extension method.  In my example, the only… Read More »Testing a Cake Addin