在我的csproj中我有
<Reference Include="System.Net.Http.Formatting, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.WebApi.Client.5.2.3\lib\net45\System.Net.Http.Formatting.dll</HintPath>
<Private>True</Private>
</Reference>
当我对该程序集中的类运行单元测试时,我得到了
System.IO.FileNotFoundException:无法加载文件或程序集 'System.Net.Http.Formatting,Version = 5.2.2.0,Culture = neutral, PublicKeyToken = 31bf3856ad364e35'或其依赖项之一。该 系统找不到指定的文件。
知道为什么会出现这种错配吗?
答案 0 :(得分:4)
请注意,异常表示缺少的版本是5.2.2.0,而您引用的是5.2.3.0
您可能有另一个引用5.2.2.0的依赖项。 您可以将重定向作为app.config文件添加到测试项目中,目标是更高版本:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Net.Http.Formatting" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>