leora leora - 17 days ago 5
C# Question

The located assembly's manifest definition does not match the assembly reference

I am trying to run some unit tests in a

C# Windows Forms
application (Visual Studio 2005) and I get the following error:


System.IO.FileLoadException: Could not load file or assembly 'Utility, Version=1.2.0.200, Culture=neutral, PublicKeyToken=764d581291d764f7' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)**

at x.Foo.FooGO()

at x.Foo.Foo2(String groupName_) in Foo.cs:line 123

at x.Foo.UnitTests.FooTests.TestFoo() in FooTests.cs:line 98**

System.IO.FileLoadException: Could not load file or assembly 'Utility, Version=1.2.0.203, Culture=neutral, PublicKeyToken=764d581291d764f7' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)


I look in my references and I only have a reference to
Utility version 1.2.0.203
(the other one is old).

Any suggestions on how I figure out what is trying to reference this old version of this DLL?

Besides, I don't think I even have this old assembly on my hard drive.
Is there any tool to search for this old versioned assembly?

Answer

The .NET Assembly loader is unable to find 1.2.0.203, but did find a 1.2.0.200. This assembly does not match what was requested and therefore you get this error. In simple words, it can't find the assembly that was referenced. Make sure it can find the right assembly by putting it in the GAC or in the application path. Also see http://blogs.msdn.com/junfeng/archive/2004/03/25/95826.aspx.

Comments