2011-11-22 7 views
14

匿名アクセスが有効になっているテストサーバー上でasmx Webサービスを実行しています。コンソールアプリケーションではなくウェブアプリケーションからリモートサーバ例外に接続できないのはなぜですか?

私はコンソールアプリケーションへのWeb参照を追加し、そのような単純なHello Worldのメソッドを呼び出します。私は、Webアプリケーションのページのロード中にまったく同じことを行うと

PivotService.PivotService p = new PivotService.PivotService(); 
String s = p.SayHello(); 

私はSystem.Net.WebException: {"Unable to connect to the remote server"}を取得。

内部例外が{"No connection could be made because the target machine actively refused it 127.0.0.1:8888"}で、10061.

のerrorCodeなぜ、このアプリのコンソールからの作業ではなく、ウェブアプリのでしょうか?

+0

VPNに接続している間にこのメッセージが表示されました –

答えて

27

これは、アプリケーション間のプロキシ設定の違いによる可能性があります。設定ファイルのDefault Proxy要素に関するMSDNのドキュメントを確認してください。

+6

app.configまたはweb.configにdefaultProxy要素がありませんでした。これをweb.configに追加し、enabled = falseを設定しました。問題を修正しました:thanks – woggles

+3

ありがとうございました!私はこれに夢中になっていたが、それは自分自身のことだった。私はフィデラーにトラフィックをフィルタリングするためにプロキシエントリを作成しました。しばらくして、私はそれに戻ったコードから、このエラーが発生し、Fiddlerはオープンしていなかったので、プロキシは失敗していました。再度、感謝します! – Dal

+0

奇妙な。私はそれをdefault = "true"で追加しなければならなかった。幸いにも数時間後に動作します:) – KoalaBear

13

HttpClientクラスSystem.Net.Http名前空間を使用しているときも同様の状況にありました。会社のプロキシサーバーを経由してネットワーク通話をしようとしていました。

このHttpClientコールは、ビジュアルスタジオのコンソールアプリケーションから呼び出されたときにdnsのIPを正常に解決できましたが、Web APIからの呼び出し時にdns解決に失敗しました。そして、私はこのエントリをWeb APIアプリケーションのweb.configに持っていなければならないことが判明しました。

<system.net> 
    <defaultProxy /> 
</system.net> 

私に正しい方向を向けるためのマーク909の答えになると信じられます。詳細については、Default Proxyを参照してください。

+0

これは私の問題を修正しました。私のメソッドを非同期に変更した後に、それが始まりました。 – Sal

+0

これも私のために働いた!郵便配達員で私のPOSTリクエストはVisual Studioのapiアプリケーションで処理されましたが、接続エラーが発生しました。 – Diomos

0

@Rキランクマールが示唆するように、私はまた、プロキシ値を追加する必要がありました:

<system.net> 
    <defaultProxy> 
     <proxy usesystemdefault="False" 
      proxyaddress="Specify Your Proxy Address: Specify Port Number" 
      // Example, "http://192.168.0.10:1234" 
bypassonlocal="False"/> 
    </defaultProxy> 
    </system.net> 
0

まず、コンソール 実行あなたのWebサービスからのWeb参照を削除し、URL をコピーあなたのソリューションエクスプローラに移動し、Web参照を追加する(古いものを除外する)>詳細> Add Web reference 貼り付けURLを追加してWeb参照名を追加してから、ソリューションを再構築する それは私のためにうまくいく

関連する問題