Windows phone 8 使用“;绑定重定向&x201D;在app.config中将System.Net.Http引用重定向到可移植版本
我正在从事一个WindowsPhone8项目,该项目的业务层是PCL项目。业务层项目与Android(Xamarin)项目解决方案共享,并使用我们意识到在WP 8项目中不可用的HttpClient 因此,根据博客,我们决定使用可移植版本的Windows phone 8 使用“;绑定重定向&x201D;在app.config中将System.Net.Http引用重定向到可移植版本,windows-phone-8,dll,portable-class-library,Windows Phone 8,Dll,Portable Class Library,我正在从事一个WindowsPhone8项目,该项目的业务层是PCL项目。业务层项目与Android(Xamarin)项目解决方案共享,并使用我们意识到在WP 8项目中不可用的HttpClient 因此,根据博客,我们决定使用可移植版本的System.Net.httpv1.5.0.0dll,它可以很好地编译WP8和Android解决方案。但它在WP项目的运行时给出了一个异常 中发生类型为“System.IO.FileLoadException”的异常 Insight.Business.DLL,但
System.Net.httpv1.5.0.0
dll,它可以很好地编译WP8和Android解决方案。但它在WP项目的运行时给出了一个异常
中发生类型为“System.IO.FileLoadException”的异常
Insight.Business.DLL,但未在用户代码中处理
其他信息:无法加载文件或程序集
'System.Net.Http,版本=2.0.0.0,区域性=中性,
PublicKeyToken=b03f5f7f11d50a3a'或其依赖项之一。这个
定位程序集的清单定义与程序集不匹配
参考资料。(来自HRESULT的异常:0x8013100)
在PCL项目中,我还使用了System.Net.Http.Formatting
和Newtonsoft.Json
DLL,它们依赖于System.Net.Http DLL,我认为这是导致此异常的原因。
我尝试使用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" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-1.5.0.0" newVersion="1.5.0.0" />
</dependentAssembly>
</assemblyBinding>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Net.Http.Formatting" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
但我还是无法解决这个问题。请提供帮助。在PCL或Windows Phone应用程序中不需要绑定重定向
除了PCL项目外,您是否在Windows Phone应用程序项目中安装了Microsoft.Net.Http NuGet软件包?是的,我安装了。这会导致问题吗???@SamyS.Rathore是的,您应该在两个项目中安装NuGet软件包。尝试删除PCL和Windows Phone应用程序中的所有绑定重定向。这是我最初做的,但不起作用。您能告诉我
System.Net.Http
上的System.Net.Http.Formatting
和Newtonsoft.Json
的依赖关系是否不会导致异常,这样我们就可以解决这个问题了??这解决了您的问题吗?我也有同样的问题。