I am trying to upgrade a third party dll, that my project depends on. The dll is Newtonsoft.json.dll.
The current version in the project is 4.5 and I am upgrading to the latest the 6.0.
When I remove the reference, and add the new version, Visual Studio 2013 adds the reference as if it is the old version, even though the dll is correct. This is what is added to my .csproj:
<Reference Include="Newtonsoft.Json, Version=4.5.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<HintPath>..\lib\Newtonsoft.Json.dll</HintPath>
</Reference>
I can edit the .csproj file to (the first one is what I get when referencing the dll from an empty project)
<Reference Include="Newtonsoft.Json, Version=6.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<HintPath>..\lib\Newtonsoft.Json.dll</HintPath>
</Reference>
or without requiring a specific version:
<Reference Include="Newtonsoft.Json">
<HintPath>..\lib\Newtonsoft.Json.dll</HintPath>
</Reference>
My project compiles, but when I run it, I get an error that it cannot find the 4.5 version of the dll referenced. I have gone through all my dependencies, and can't find any references to the old version, and the code that throws the exception is my code, in this project.
I am unsure why Visual Studio cannot resolve the correct version. I am not using NuGet.
I hope someone has a little trick up their sleeve to help me debug this problem. This is really puzzling me, and I am sure it is such a simple thing, but I just can't find it.