找不到WCF服务器错误

时间:2011-05-06 03:05:54

标签: c# .net silverlight wcf silverlight-4.0

在Silverlight 4应用程序使用的WCF服务中,我收到此错误:

  

{System.ServiceModel.CommunicationException:   远程服务器返回错误:   未找到。 --->   System.Net.WebException:远程   服务器返回错误:NotFound。   ---> System.Net.WebException:远程服务器返回错误:   未找到。在   System.Net.Browser.BrowserHttpWebRequest.InternalEndGetResponse(IAsyncResult的   System.Net.Browser上的asyncResult)   ...

它在某一点上工作,但我做了更新,现在它不起作用。我可以通过URL请求服务,并加载帮助页面,我可以检查WSDL。 FireFox确定我收到500内部服务错误,所以我确定这是一个因素,但不确定原因?

我在cassini中托管了WCF服务以进行测试。

有什么想法吗?感谢。

3 个答案:

答案 0 :(得分:2)

同时检查您用作方法参数一部分的所有类是否带有[DataContract]和[DataMember]属性。如果所有这些看起来都井井有条,您可以尝试使用WCF跟踪来查明问题。

打开它就像这样(web.config):

<configuration>
  <system.diagnostics>
    <sources>
          <source name="System.ServiceModel" 
                switchValue="Information, ActivityTracing"
                propagateActivity="true">
          <listeners>
           <add name="traceListener" 
               type="System.Diagnostics.XmlWriterTraceListener" 
               initializeData= "c:\log\Traces.svclog" />
          </listeners>
       </source>
    </sources>
  </system.diagnostics>
</configuration>

可以双击生成的文件,它将在跟踪审查员(Visual Studio工具的一部分)中打开。查找任何RED部分,这些部分将引导您进行客户端 - 服务器协商中发生的任何异常。

希望这有帮助,欢呼!

答案 1 :(得分:0)

您是否检查了ServiceReferences.ClientConfig文件中的所有端点设置?

答案 2 :(得分:0)

检查:

  1. 端点地址
  2. DataContract,DataMember,EnumMember 端点数据合同的属性
  3. 你没有转移int Enum Enum中不存在的值
  4. 如果您的数据合同是继承的 从某些类检查KnownType 属性
  5. 如果您确实使用服务参考 它已更新