SofaKng
SofaKng

Reputation: 1075

How do I fix an assembly referencing an old (beta) version of .NET?

I'm trying to compile a project in Visual Studio 2010. It worked fine in Visual Studio 2008 but 2010 is giving the following error:

The primary reference "TiS.Core.eFlowAPI" could not be resolved because it has an indirect dependency on the .NET Framework assembly "mscorlib, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" which has a higher version "2.0.3600.0" than the version "2.0.0.0" in the current target framework.

I've tracked down the culprit to MDbgCore.dll. This assembly is included (in a dependency chain) and it is looking for mscorlib 2.0.3600.0.

After doing some research it looks like that is a beta version of .NET 2.0.

How do I solve this problem? I don't have access to the code of this third party DLL (ie. TiS.Core.eFlowAPI).

Upvotes: 8

Views: 1595

Answers (4)

Michael Rodrigues
Michael Rodrigues

Reputation: 5137

I had the same problem. I was able to resolve it by renaming / deleting the MdbgCore.dll in the target directory.

Upvotes: 0

SofaKng
SofaKng

Reputation: 1075

I've solved it. Perhaps the wrong way but I used Reflexil to modify the offending DLL so it pointed to the correct version of .NET.

Upvotes: 6

Matías Fidemraizer
Matías Fidemraizer

Reputation: 64923

You can try assembly redirection. I'm unsure about if this is the solution for you, but I believe that can be something to check:

Upvotes: 0

Doug Chamberlain
Doug Chamberlain

Reputation: 11341

Try creating a new project and referencing the correct assembly. then copy and paste the code into your project

Upvotes: 1

Related Questions