Press "Enter" to skip to content

Fun with Binding Redirects in .NET

Nick Craver has some advice if you see binding redirect problems:

You’re probably here because of an error like this:

Could not load file or assembly ‘System.<…>, Version=4.x.x.x, Culture=neutral, PublicKeyToken=<…>’ or one of its dependencies. The system cannot find the file specified.

And you likely saw a build warning like this:

warning MSB3277: Found conflicts between different versions of “System.<…>” that could not be resolved.

Whelp, you’re not alone. We’re thinking about starting a survivors group. 

Read on for Nick’s advice here. This is particularly tricky with F# and especially when you use type providers, as that can easily lead to a version mismatch in FSharp.Core. I’ve spent way too much time tracking those down.