2016-06-19 11 views
0

https://msdn.microsoft.com/en-us/windows/uwp/networking/network-communications-in-the-background 私たちが読むことができます: を「他のネットワークトランスポートとは異なり、HttpClientをオブジェクトが直接のUsingTransportメソッドに渡すことはできませんControlChannelTriggerオブジェクト。代わりに、HttpRequestMessageオブジェクトは、HttpClientオブジェクトとControlChannelTriggerで使用するために特別に構築する必要があります.HttpRequestMessageオブジェクトは、RtcRequestFactory.Createメソッドを使用して作成されます。UWP、ControlChannelTrigger&RtcRequestFactoryクラスのWindows 10上のUWPアプリを更新し、次のMSDNの記事で

私はUWPアプリでRtcRequestFactory.Createメソッドを使用すると、私は以下のエラーを取得: 「System.PlatformNotSupportedExceptionを:操作はこのプラットフォームではサポートされていませんSystem.Net.Http.RtcRequestFactory.Createで (HTTPMETHOD。メソッド、Uri uri) "

https://msdn.microsoft.com/fr-fr/library/dn600634(v=vs.110).aspxを見ると、「.NETネイティブではSystem.Net.Http.RtcRequestFactoryクラスはサポートされていません」と記載されています。 私の理解は、UWPアプリケーションは.NETネイティブを使用しなければならないということです。

これは、RtcRequestFactoryを使用すると、UWPアプリケーションのオプションではないようです。 バックグラウンドでネットワーク通信を行う方法は何ですか?

答えて

0

あなたの説明によると、あなたは、バックグラウンドでのネットワーク通信を実現するためにのHttpClientControlChannelTriggerを使用します。

は、管理UWPアプリでHTTPクライアントの役割を実装するための2つののHttpClient APIをありますSystem.Net.Http.HttpClientWindows.Web.Http.HttpClientthis articleに基づいて、System.Net.Http名前空間は、Windowsストアアプリケーションで使用するためのWindowsの将来のバージョンでは利用できない可能性があります。 Windows 8.1およびWindows Server 2012 R2からは、Windows.Web.Http名前空間にWindows.Web.Http.HttpClientを使用してください。 Windows.Web.Http.HttpClientでControlChannelTriggerを使用するには

、HttpRequestMessageオブジェクトも必要とされているが、それは、RtcRequestFactory.Create方法なしで作成することができます。

あなたは​​での実装を見つけることができる新しいWindows.Web.Http名前空間でのHttpClientでControlChannelTriggerクラスを使用する方法を示している(プロジェクトHttpClientTransportHelper - >メソッドSetUpHttpRequestAndSendToHttpServerとSendHttpRequest - >クラス通信モジュール)。注:これはWindows 8.1のサンプルですが、UWPで簡単に再利用できます。

HttpRequestMessage httpRequest= new HttpRequestMessage(HttpMethod.Get, serverUri); 
channel.UsingTransport(httpRequest); 
関連する問題