我在 Visual Studio 2008 中有一个 Windows CE 项目。在 Windows Server 2003 上有多个对托管在 IIS 6.0 中的服务的 Web 引用。当我调试应用程序或在部署后运行时,我无法使用 Web 服务,因为以下网络异常:
消息:“无法建立与网络的连接。”
回应:没有
状态:System.Net.WebExceptionStatus.ConnectFailure
StackTrace:“在 System.Net.HttpWebRequest.FinishGetResponse() 在 System.Web.Services.Protocols.WebClientProtocol.GetWebResponse(WebRequest request) 在 System.Web.Services.Protocols.HttpWebClientProtocol 的 System.Net.HttpWebRequest.GetResponse()。在 System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] 参数) 的 System.Web.Services.Protocols.SoapHttpClientProtocol.doInvoke(String methodName, Object[] 参数, WebClientAsyncResult asyncResult) 的 GetWebResponse(WebRequest 请求
)在 WMS4.Tests.TestService.GetData() ...
我创建了一个测试服务来测试行为。该服务只返回字符串“Success”。这是包含测试服务的 WCF 服务库中 app.config 的服务模式部分。其他服务已省略:
<system.serviceModel>
<serviceHostingEnvironment>
<baseAddressPrefixFilters>
<add prefix="http://*myserver*"/>
</baseAddressPrefixFilters>
</serviceHostingEnvironment>
<services>
<service name="WMSDataService.TestService">
<endpoint address="" binding="basicHttpBinding" contract="WMSDataService.ITestService"></endpoint>
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
</service>
</services>
<bindings>
<basicHttpBinding>
<binding name="basicConfig">
<security mode="None">
</security>
</binding>
</basicHttpBinding>
</bindings>
<behaviors>
<serviceBehaviors>
<behavior name="basicBehavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true" />
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
由于这是一个 Windows CE 项目,因此没有客户端 app.config 文件。
现在,生产设备无一例外地使用相同的服务。我还可以从测试控制台客户端使用该服务。似乎只有我正在测试的新移动设备受此影响。
我觉得这是一个代理身份验证问题,但我在参考文件中没有看到代理有任何问题。那么,我能做些什么来消除这个异常并使用服务呢?