0

VisualStudio 2012 と Xamarin の安定版で MVVMCross と Mono を使用して PCL コア ライブラリを構築しています。次のコンパイルエラーがあります。

エラー 3 'System.Net.WebHeaderCollection' には 'Add' の定義が含まれておらず、タイプ 'System.Net.WebHeaderCollection' の最初の引数を受け入れる拡張メソッド 'Add' が見つかりませんでした (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 でも同じコードが機能します。

4

2 に答える 2

3

PCLSystem.Netスタックは移植可能です。つまり、完全な機能を備えているわけではありません。

PCL .Net スタックの Cookie については、 on を設定してCookieCollectionから、 onをRequest調べることができると思います。CookiesResponse

それだけでは不十分な場合は、何らかの「注入」手法を使用して、各プラットフォームで必要な機能を実装する必要があります。たとえば、mvvmcross でプラグインを使用できます。


見逃している可能性があることの 1 つは、現在 xamarin が PCL を正しくビルドしていないことです。これは変更されようとしていますが、現在、xamarin は完全なモノタッチまたはモノドロイド スタックに対して PCL をビルドしています。その結果、xamarin は pcl 機能の可用性を誤って報告する場合があります。xamarin で構築された PCL は確かに移植性がありません。http://slodge.blogspot.co.uk/2013/01/almost-portable-binaries.html を参照してください。

于 2013-05-24T19:27:34.727 に答える