新しいポータブル クラス ライブラリ プロジェクトを開始して、Flurl.Http NuGet パッケージを追加しました。これにより、予想どおり、すべての依存関係もダウンしたようです。
ただし、 using Flurl.Http ディレクティブと次のような単純なコードを追加すると
using System.Threading.Tasks;
using Flurl;
using Flurl.Http;
public class ClientRepository
{
public async Task<string> Connect()
{
var result = await "http://example.com"
.AppendPathSegment("/login")
.PostUrlEncodedAsync(new { username = "you", password = "password" }).ReceiveJson();
return result.token;
}
}
コンパイルエラーが発生します
型または名前空間名 'Http' が名前空間 'Flurl' に存在しません (アセンブリ参照がありませんか?)
intellisense が .Http 名前空間や拡張メソッド (PostUrlEncodedAsync) を問題なく認識できるのは奇妙なことです。
この最も基本的な PCL プロジェクトに欠けているものは何ですか?
おそらく、私の package.config ファイルは価値があるので、ここにもあります。
<packages>
<package id="Flurl" version="1.0.5" targetFramework="portable-net45+sl50+MonoAndroid10+xamarinios10+MonoTouch10" />
<package id="Flurl.Http" version="0.4.1" targetFramework="portable-net45+sl50+MonoAndroid10+xamarinios10+MonoTouch10" />
<package id="Microsoft.Bcl" version="1.1.9" targetFramework="portable-net45+sl50+MonoAndroid10+xamarinios10+MonoTouch10" />
<package id="Microsoft.Bcl.Async" version="1.0.168" targetFramework="portable-net45+sl50+MonoAndroid10+xamarinios10+MonoTouch10" />
<package id="Microsoft.Net.Http" version="2.2.22" targetFramework="portable-net45+sl50+MonoAndroid10+xamarinios10+MonoTouch10" />
<package id="Newtonsoft.Json" version="6.0.3" targetFramework="portable-net45+sl50+MonoAndroid10+xamarinios10+MonoTouch10" />
<package id="PCLStorage" version="0.9.6" targetFramework="portable-net45+sl50+MonoAndroid10+xamarinios10+MonoTouch10" />
</packages>