ソリューションの1つをPCLに移植していますが、サポートされているクラスとNETFramework基本クラスライブラリのプロパティに関して多くの問題に直面しています。同じ機能を異なるプラットフォーム間で機能させるために、WebClientを実装しましたが、WebRespornceクラスにステータスコードプロパティが表示されません。
コードサンプルを投稿する前に、現在ターゲットにしているプラットフォームを強調しておきます。
フレームワークのバージョンは4.5で、ターゲットとしているプラットフォームは次のとおりです。Windows Phone 8 Windows 8(RT)Windows7/8とWPFアプリケーション。
これが私たちが使用しているコードですが、クラウドはWebResponce内にStatusCodeプロパティを見つけられません
private static byte[] ReadStreamFromResponce(WebResponse result)
{
using (var responseStream = result.GetResponseStream())
using (var ms = new MemoryStream())
{
if (responseStream != null) responseStream.CopyTo(ms);
return ms.ToArray();
}
}
private static Task<byte[]> MakeAsyncRequest(string requestString)
{
var request = (HttpWebRequest)WebRequest.Create(requestString);
Task<WebResponse> requestTask = Task.Factory.FromAsync(
request.BeginGetResponse,
asyncResult => request.EndGetResponse(asyncResult),
null);
return requestTask.ContinueWith(t => ReadStreamFromResponce(t.Result));
}