Que*_*nRM 7 rest httpclient xamarin
我找到了一个常见的问题,但不幸的是,我无法找到解决方案.
我创建了一个xamarin.form应用程序,它不是PCL,而是共享库项目.我想使用REST api,为此,我需要使用HttpClient实例.嗯,这是问题所在.使用PCL,我只需要添加nuget包Microsoft HTTP Client Libraries,然后我可以使用HttpClient类.
使用共享库项目,我无法将此nuget包添加到主项目(我认为这是正常的).所以我添加到.Droid一个,和.iOS一个(哦,顺便说一句,我使用的是mac,而Xamarin Studio,如果可以帮助的话).当我添加Nuget包时,我可以添加以下行:using System.Net.Http; 但是HttpClient类仍然不可用.我的意思是不可用的是,我只是不能使用这个类(无法找到类型或命名空间httpclient,你是否缺少程序集引用?)
有没有办法在共享项目中使用HttpClient类,而不是PCL?如果有,怎么样?
Sve*_*übe 20
将Microsoft HTTP客户端库安装到Android和iOS项目时一定出错,因为不支持这些项目类型.
无法安装包'Microsoft.Bcl.Build 1.0.14'.您正在尝试将此软件包安装到以"MonoAndroid,Version = v6.0"为目标的项目中,但该软件包不包含任何与该框架兼容的程序集引用或内容文件.有关更多信息,请与软件包作者联系.
在HttpClient配备了Xamarin基类库https://developer.xamarin.com/api/namespace/System.Net.Http/.
因此,您不需要Microsoft HTTP客户端库,只需要
System.Net.Http到您的Android/iOS项目中using System.Net.Http.在Xamarin Studio上:编辑参考>包>检查 System.Net.Http
在Visual Studio上:添加引用>程序集>框架>检查 System.Net.Http
Protip:此外,你可以看看Paul Betts的ModernHttpClient:https://github.com/paulcbetts/ModernHttpClient和Kerry Lothrops关于HttpClientHandlers的博客文章http://kerry.lothrop.de/httpclient-flavors/