在webservice中调用helloworld方法时出现Http 500错误

时间:2010-07-12 08:24:57

标签: asp.net web-services

在我们的webservice项目中调用helloworld方法时,我们突然开始收到此错误:

这是错误:


  

网站无法显示该页面   HTTP 500最有可能的原因:   网站正在维护中。该   网站有编程错误。        你可以尝试什么:        刷新页面。

 Go back to the previous page. 

 More information 
     

此错误(HTTP 500内部服务器   错误)表示您的网站   访问有一个服务器问题   阻止网页显示。

     

有关HTTP的更多信息   错误,请参阅帮助。


昨天工作得很好,但今天我们已经开始收到这个让我们感到困惑的事了。 我们添加了另一个Webservice项目,它没有任何问题。 没有理由为什么它不适用于现有项目。 如果您有任何建议,请告诉我。 谢谢 纳文

3 个答案:

答案 0 :(得分:0)

这只是一个通用的错误消息,可能意味着什么。您需要检查错误日志以获得有关问题的更详细说明。

答案 1 :(得分:0)

当HTTP请求或SOAP有效负载格式错误时,通常会发送500内部服务器错误。由于您在HelloWorld项目中工作,我最好的猜测是Web服务尚未部署或客户端中的url错误。 首先尝试使用web_serviceurl?wsdl查看是否部署了该服务。如果你在浏览器中看到wsdl,那么服务就可以了,问题出在客户端。检查您是否在客户端中更改了某些内容,现在又无法再调用Web服务

答案 2 :(得分:0)

您可能希望在开发网络服务时添加跟踪,这是WCF Tracing上的精彩帖子。

跟踪WCF

将此添加到您的Web.config

<configuration>
      <system.serviceModel>
            <diagnostics>
                  <messageLogging logMessagesAtTransportLevel="true"
                                    logMessagesAtServiceLevel="true"
                                    logEntireMessage ="true"
                                    maxMessagesToLog="1000"/>
            </diagnostics>
      </system.serviceModel>
      <system.diagnostics>
            <sharedListeners>
                  <add name="textListener"
                          type="System.Diagnostics.XmlWriterTraceListener"
                           initializeData="c:\temp\logs\msgs.e2e"/>
            </sharedListeners>
            <sources>
                  <source name="System.ServiceModel.MessageLogging"
                              switchValue="All">
                        <listeners>
                              <add name="textListener"/>
                        </listeners>
                  </source>
                  <source name="System.ServiceModel" switchValue="All">
                        <listeners>
                              <add name="textListener" />
                        </listeners>
                  </source>
            </sources>
      </system.diagnostics>
</configuration>

打开Visual Studio命令行控制台并编写: svctraceviewer 然后在此查看器中打开跟踪文件,您可能需要选择“查看所有文件”以查找为跟踪指定的文件。

另请记住,在WCF服务运行时无法打开跟踪日志。