2

どこから始めればいいのかよくわかりません!! この問題は私を夢中にさせてきました!

私はWindows Phone 8使用するアプリを開発しようとWCFしていますが、以前は問題なく動作していましたが、今と同じ通信エラーが頻繁に発生するため、ネットワークを停止すると最終的に戻ってきます。アダプターを再起動しますが、これを数回行う必要があります。

何かが起こったのですが、まだ原因はわかりませんが、エミュレーターが完全に動作しなくなり、ハングアップしてさまざまなエラーが発生しました。SDK 8、hyper-v を数回アンインストールしましたが、それでもエラーが発生しました。次に、ロットをもう一度アンインストールし、すべてのhyper-vフォルダー、構成などを削除しました...どのように修正したかはわかりませんが、からにスワップすると機能し始めましEmulator WVGA 512MBEmulator 720P。その後、元に戻したところ、どういうわけか再び機能し始めました...意味がありません! 知っている!

とにかく、エミュレーターがバックアップされたので、デスクトップから実行されている wcf サービスとアプリを通信させることができませんでした。次のエラーが発生し続けます。

{System.Net.WebException: The remote server returned an error: NotFound. ---> System.Net.WebException: The remote server returned an error: NotFound.
    at System.Net.Browser.ClientHttpWebRequest.InternalEndGetResponse(IAsyncResult asyncResult)
    at System.Net.Browser.ClientHttpWebRequest.<>c__DisplayClasse.<EndGetResponse>b__d(Object sendState)
    at System.Net.Browser.AsyncHelper.<>c__DisplayClass1.<BeginOnUI>b__0(Object sendState)
    --- End of inner exception stack trace ---
    at System.Net.Browser.AsyncHelper.BeginOnUI(SendOrPostCallback beginMethod, Object state)
    at System.Net.Browser.ClientHttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
    at System.ServiceModel.Channels.HttpChannelFactory.HttpRequestChannel.HttpChannelAsyncRequest.CompleteGetResponse(IAsyncResult result)}

そのため、「リモートサーバーがエラーを返しました:NotFound」というエラーを調査し、多数の記事を見つけて、提案されたすべてをほとんど試しましたが、まだ運がありません!!

これは Microsoft の特定の記事です: http://msdn.microsoft.com/en-us/library/windowsphone/develop/jj684580%28v=vs.105%29.aspx

wcf サービスの開発を始めたばかりなので、IIS ソリューションはまだ試していませんが、IIS Express は試しましたが、何も試していません!! 先に述べたように、この使用法は機能します。

私を怒らせるのは、次のことです。

  1. .svc にアクセスするか、Web ブラウザで HTTP Activation を介してアクセスできます

  2. エミュレーターでルーターの Web サイトにアクセスできます

  3. エミュレータでインターネットにアクセスできます

したがって、他のデバイスにアクセスして通信することは間違いなく可能ですが、私の wcf サービスにはアクセスできません。

私が見つけた別の記事 (リンクはありませんが、後で探します) では、applicationhost.config場所に2 つ目のバインディングを追加することを提案し%userprofile%\Documents\IISExpress\config\ました。 trueにしない限り2つのバインディングmultipleSiteBindingsEnabledがあり、その問題は解決しましたが、localhostの代わりに完全なIPアドレスを使用して2番目のバインディングを導入し、完全なIPアドレスで.svcを使用するようにサービスを変更した後でも、やはり変更はありません...同じエラー。

メソッドの最初にブレークポイントがあり、関連するコードを実行できないため、エラーが発生しているとは思いません。たどり着けない!以前は機能していたのに、突然停止した理由がわかりません。明らかに私のエミュレーターに関連して、最初は悲しみを感じていますが、まだ解決策はありません!!!

誰か提案がありますか?私は完全に立ち止まっており、次にどこに行くべきかわかりません!!! 非常にイライラします!

4

1 に答える 1

4

何が問題なのかわかった!

私は自分のマシンで特定のウイルス対策/ファイアウォール ソフトウェアを使用して作業するのに慣れていますが、使用しているマシンはテスト マシンであり、標準の Windows ファイアウォールを使用しています!!

これが問題でした!! まあ、部分的に。どういうわけか、Windows ファイアウォール サービスをオフにしてもまだ接続できませんが、ファイアウォールをオンのままにし、プライベート ネットワークを監視しないようにすると、すぐに機能しました。

ファイアウォールがオンになっていて、プライベートネットワークの監視が行われていたため、そもそもどのように機能するかはまだわかりませんが、どういうわけか機能しているので、これが問題であると想定する必要があります.

シナリオに応じてこれを設定する方法の詳細については、これをお読みください。

http://msdn.microsoft.com/en-us/library/windowsphone/develop/jj684580%28v=vs.105%29.aspx

個人的には、接続しているネットワークに応じて常に新しい IP がマシンに割り当てられているため、IP の代わりにマシン名を使用することにしましたが、プライベートおよびドメイン ネットワーク用の特定のポートを追加しただけなので、常に私の wcf サービスにアクセスします。

お役に立てれば。

于 2013-03-24T02:08:11.887 に答える