Reference required to assembly '<assemblyidentity>' containing type '<typename>', but a suitable reference could not be found due to ambiguity between projects '<projectname1>' and '<projectname2>'

An expression uses a type, such as a class, structure, interface, enumeration, or delegate, that is defined outside your project. However, you have project references to more than one assembly defining that type.

The cited projects produce assemblies with the same name. Therefore, the compiler cannot determine which assembly to use for the type you are accessing.

To access a type defined in another assembly, the Visual Basic compiler must have a reference to that assembly. This must be a single, unambiguous reference that does not cause circular references among projects.

Error ID: BC30969

To correct this error

  1. Determine which project produces the best assembly for your project to reference. For this decision, you might use criteria such as ease of file access and frequency of updates.

  2. In your project properties, add a reference to the file that contains the assembly that defines the type you are using.

See Also

Tasks

How to: Add or Remove References in Visual Studio (Visual Basic)

How to: Modify Project Properties and Configuration Settings

Troubleshooting Broken References

Concepts

Project References

Resolving a Reference When Multiple Variables Have the Same Name

Other Resources

Referencing Namespaces and Components