我正在构建一个.Net标准库,它构建良好,但在测试时,我收到此错误
HResult = -2147024894 Message =无法加载文件或程序集&System; Net.Net.Http,Version = 4.1.1.1,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'或其中一个依赖项。该系统找不到指定的文件。来源=图书馆试验
我已经安装了System.Net.Http Nuget Package仍然没有成功。这是一个新项目,所以我必须做错什么
答案 0 :(得分:8)
正如Ved Tiwari上面所说,删除app.config(或解决方案/项目)中对“4.1.1.1”的引用。
例如,我删除了以下内容并重新开始工作:
<dependentAssembly>
<assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.1.1.2" newVersion="4.1.1.2" />
</dependentAssembly>
答案 1 :(得分:0)
如果您安装了System.Diagnostics.DiagnosticSource
依赖项,请将其删除并将System.Net.Http
更新为4.1.1.1版
答案 2 :(得分:0)
要在我的解决方案中修复同样的错误,我不仅要从 Web.config (see @Rado's answer)删除bindingRedirect
的{{1}},还需要从项目文件( *。csproj )中删除System.Net.Http
,Version
等及Culture
引用。
基本上,在 *。csproj 中改变了
HintPath
到
<Reference Include="System.Net.Http, Version=4.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Net.Http.4.1.0\lib\net46\System.Net.Http.dll</HintPath>
</Reference>
答案 3 :(得分:-1)
在web.config
文件中添加以下内容:
<dependentAssembly>
<assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.1.1.2" newVersion="4.0.0.0" />
</dependentAssembly>