Converting projects to new csproj

Saturday, June 02 2018 visual-studio

I’m sure I’m not the only experienced C# developer who finds the classic csproj file format to be more than a little inscrutable - difficult to read and understand.

Read more »

Sharpen The Saw #37

Monday, June 04 2018 sharpen-the-saw

In this issue from October 2017: Explaining tuples in C# 7; .NET 4.7.1 can now consume packages targeting .NET Standard 2.0; Hanselman finds he’s smarter when working with someone else; Pwned passwords available for download; Stackoverflow reports on software developer ecosystems; and Richard Campbell presents the history of .NET.

Read more »

Troubleshooting Assembly Loading with the Assembly Binding Log Viewer

Saturday, June 09 2018 debugging

After making the changes detailed recently where I upgraded the .csproj project file format for a personal project, I found that the command line tool compiled by the project failed to work.

Read more »

Troubleshooting Assembly Load Issues with the MSBuild Structured Log Viewer

Saturday, June 16 2018 debugging

As discussed last time, I’d successfully fixed one of the errors that was stopping my console application from running - but there was still one remaining.

Read more »

Solving my Assembly Load Issues

Saturday, June 23 2018 debugging

So far, I’ve identified that the version of System.Reflection found in the NuGet package is version and the version in the global assembly cache is version - so where is the version that the build process is choosing?

Read more »

A question of struct performance

Saturday, June 30 2018 csharp

A question came up in an online discussion about the relative performance of using a bare primitive type vs wrapping that type into a struct. Wrapping the type is a common technique used to avoid runtime errors, enlisting the compiler to enforce the correct semantics at compile time instead. But, sometimes people worry about the performance cost of doing this.

Read more »