我正在使用MVVMCross和Mono与VisualStudio 2012和稳定版Xamarin构建我的PCL核心库。我有以下编译错误:
错误3 'System.Net。WebHeaderCollection'不包含'Add'的定义,也没有扩展方法'Add'接受类型为'System.Net '的第一个参数。WebHeaderCollection'可以找到(您是否缺少using指令或程序集引用?)
当尝试这样做时:
string address = "http://www.test.com/;
HttpWebRequest request = WebRequest.Create(address) as HttpWebRequest;
request.Method = "GET";
request.Accept = "application/json";
request.Headers.Add(HttpRequestHeader.Cookie, "customcookie");
HttpWebRequest是很好的参考。
注意:同样的代码可以在Mac上的Xamarin Studio中工作。
PCL System.Net
堆栈是可移植的 -这意味着它的功能不全。
对于PCL .Net堆栈中的cookie,我相信您可以将CookieCollection
设置在Request
上,然后您可以在Response
上检查Cookies
如果这对你来说还不够,那么你必须使用某种"注入"技术来实现你想要在每个平台上的功能-例如,你可以在mvvmcross
中使用插件我认为你可能错过的一件事是,目前xamarin不能正确构建pcl -这即将改变,但现在今天xamarin构建pcl针对其完整的单触或单机器人堆栈。因此,xamarin可能会错误地报告pcl功能的可用性—并且基于xamarin构建的pcl肯定是不可移植的—参见http://slodge.blogspot.co.uk/2013/01/almost-portable-binaries.html
我有最新的mvvmcross和Xamarin当我尝试设置请求时。我得到一个异常。在Xamarin bugzilla中有描述