Building a Measurement Studio Project in Visual Studio Results in Assembly Conflicts

Updated Jun 14, 2018

Reported In

Software

  • Measurement Studio

Issue Details

When I build a Measurement Studio project in Visual Studio that references an assembly, I receive the following warning:

Warning: Found conflicts between different versions of the same dependent assembly

Why does this warning occur, and how can I fix it?

Solution

This warning occurs for two main reasons:
  • Two or more versions of an assembly are being called in the same project
  • The assembly being called is an older version than the one currently installed
For Visual Studio 2008 and earlier, it is necessary to change the MSBuild project build output verbosity to Normal or more detailed in order to see which assembly is causing the error as well as details on the versions and file locations. To accomplish this, follow these steps:
  1. Navigate to Tools»Options
  2. In the left-hand tree, expand the Projects and Solutions entry, then select Build and Run
  3. Set the MSBuild project build output verbosity level to Normal
After completing these steps, the output will include the assembly which is causing the warning, as well as the version and location on disk. For Visual Studio 2010 the assembly causing the warning should populate in the Error List by default. 

If the assembly referenced in the warning is NationalInstruments.Common, it is likely that the version of the NationalInstruments.Common assembly installed on your machine is newer than the version that the project originally referenced. It can also occur when your project references assemblies that depend upon versions of NationalInstruments.Common older than the latest version installed on your machine. Because the NationalInstruments.Common assembly is designed to be backward compatible with older versions. The NationalInstruments.Common assembly uses publisher policy to redirect references from older versions to newer versions. Therefore, it is safe to disregard this warning.

Note: This warning can also occur with new projects if the NationalInstruments.Common assembly is updated without the necessary changes to Measurement Studio.  If this occurs, repairing the installation of Measurement Studio will fix the issue.

For all other assembly conflicts, if you double-click the warning in the Error List in Visual Studio, Visual Studio provides you the option to generate a binding redirect in your app.config file. If you generate a binding redirect, the warning is no longer generated when you build the project. However, if the NationalInstruments.Common assembly is subsequently updated on the machine, building the referencing project will result in a build error. To fix the build error, you must update the binding redirect entry in app.config

For more information about Measurement Studio class library versioning, refer to Measurement Studio .NET Class Library Versioning for Development and Deployment

WAS THIS ARTICLE HELPFUL?

Not Helpful