0

我用 C# 和 .Net 2.0 创建了一个 Windows 服务应用程序,并添加了一个 Web 服务作为

http://localhost/postIncidents.ws.php?wsdl

它具有“ReportIncident”方法。我在本地环境中检查了 Windows 服务。有效。在我部署它之前,我添加了下面的代码以从设置文件中获取特定的 url。

shids_client.shidsWebServer.ReportIncident r = new shids_client.shidsWebServer.ReportIncident();
r.Url = Constant.readUrl();
r.CallReportIncident(time,LocalIPAddress(),type,line);

部署后,我将 URL 添加到我的设置文件中

      http://192.168.1.1/postIncidents.ws.php?wsdl

我检查后,它没有工作。我的日志中有以下错误:

“此服务的 WSDL 中未定义操作‘CallReportIncident’”


如果我删除它,那么它不会显示 wsdl xml。它只会显示一个呈现的页面。

4

1 回答 1

0

您使用 ?wsdl 标志,以便 Visual Studio 可以下载 WSDL 并生成服务代理。当代理实际运行时,它会针对 http:///postIncidents.ws.php 运行,而不是需要 ?wsdl。因此,请尝试从 URL 中删除 ?wsdl。

于 2013-05-07T17:19:44.777 回答