我有一个在启用了匿名访问的测试服务器上运行的asmx Web服务.
当我将Web引用添加到控制台应用程序并调用一个简单的Hello World方法时,如下所示:
PivotService.PivotService p = new PivotService.PivotService();
String s = p.SayHello();
Run Code Online (Sandbox Code Playgroud)
当我在Web应用程序的页面加载中执行完全相同的操作时,我得到了一个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"},errorCode 10061.
为什么这可以从控制台应用程序而不是Web应用程序工作?
Mar*_*909 28
这可能是由于应用程序之间的代理设置不同.查看配置文件中Default Proxy元素周围的MSDN文档.
Kir*_*n R 16
在使用命名空间中的HttpClient类时,我也处于类似的情况System.Net.Http.我试图通过公司代理服务器进行网络呼叫.
虽然此HttpClient调用能够在Visual Studio中从控制台应用程序调用时成功解析dns的IP,但是当从Web API调用时,dns解析失败.事实证明,我必须在web api应用程序的web.config中输入此条目.
<system.net>
<defaultProxy />
</system.net>
Run Code Online (Sandbox Code Playgroud)
感谢Mark 909给出了指向正确方向的答案.有关其他信息,请参阅默认代理.
| 归档时间: |
|
| 查看次数: |
21812 次 |
| 最近记录: |