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

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