Whenever we upgrade to a new version of Sitefinity or applying service packs, we get something like the following version conflict errors:

Could not load file or assembly ‘Telerik.Sitefinity, Version=…, Culture=neutral, PublicKeyToken=b28c218413bdf563′

To fix that, place the assembly binding redirect info to the runtime section of your web.config and change the values of the “oldVersion” and “newVersion” acordingly. Your site should work again after a rebuild.

<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Telerik.Sitefinity" publicKeyToken="b28c218413bdf563" />
<bindingRedirect oldVersion="4.1.1574.0" newVersion="4.2.1650.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Telerik.Sitefinity.Model" publicKeyToken="b28c218413bdf563" />
<bindingRedirect oldVersion="4.1.1574.0" newVersion="4.2.1650.0"/>
</dependentAssembly>
</assemblyBinding>
</runtime>

Some of the most recent version numbers I’ve tracked are as followed:

  • Sitefinity 4.0 (4.0.1210.0)
  • Sitefinity 4.1 (4.1.1395.0)
  • Sitefinity 4.1 SP1 (4.1.1405.0)
  • Sitefinity 4.1 SP2 (4.1.1501.0)
  • Sitefinity 4.1 SP3 (4.1.1574.0)
  • Sitefinity 4.2 (4.2.1650.0)
  • Sitefinity 4.2 SP1 (4.2.1733.0)

Another short note/ref to check out is this post on stackoverflow explaining some of the solution to version conflict error:

“Found conflicts between different versions of the same dependent assembly”.

Below is the direct quote from Brian which I find it pretty useful.:

This warning means that two projects reference the same assembly (e.g. System.Windows.Forms) but the two project require different versions. You have a few options:

  1. Recompile all projects to use the same versions (e.g. move all to .Net 3.5). This is the preferred option because all code is running with the versions of dependencies they were compiled with.
  2. Add a binding redirect. This will suppress the warning. However, your .Net 2.0 projects will (at runtime) be bound to the .Net 3.5 versions of dependent assemblies such as System.Windows.Forms. You can quickly add a binding redirect by double-clicking on error in Visual Studio.
  3. Use CopyLocal=true. I’m not sure if this will suppress the warning. It will, like option 2 above, mean that all projects will use the .Net 3.5 version of System.Windows.Forms.

Here is a utility to identify the offending reference(s):
http://www.brianlow.com/index.php/2010/01/25/find-conflicting-assembly-references/

K that’s about it for now.