Problem: Could not load assembly reference

Sitefinity CMS version 11.1 ships with an updated reference to System.Web.OData. This updated reference has a chain of dependent references that get added when you use the NuGet package. When using Visual Studio versions 15.8.0 and above, Visual Studio automatically adds assembly binding redirect for the following assemblies:

  • System.Linq
  • System.Linq.Expressions
  • System.Reflection
  • System.Runtime.Extensions

It redirecting them to .NET Framework version 4.7.2.  Because Sitefinity CMS 11.0 and above is built with .NET Framework 4.7.1, on runtime you get the assembly reference error.

The exception occurs in the following format:
Could not load a reference assembly for execution

Solution: Fix the incorrectly introduced binding redirects

Remove the assembly binding redirects in your web.config for the following assemblies:

  • System.Linq
  • System.Linq.Expressions
  • System.Reflection
  • System.Runtime.Extensions

Save the web.config and run your project. 

Optional step: Delete the incorrectly added assemblies
Although they will no longer cause any issues, you can also manually delete the following assemblies, targeting .NET Framework version 4.7.2 from your Sitefinity CMS project bin folder:

  • System.Linq
  • System.Linq.Expressions
  • System.Reflection
  • System.Runtime.Extensions

If you rebuild your project, the assemblies will no longer be present in the bin folder. 

Solution:  Downgrade or upgrade your Visual Studio version 

Use Visual Studio versions prior to 15.8.0 or Visual Studio 2017 15.9

Was this article helpful?