从silverlight调用.asmx服务时的通信异常

时间:2011-05-09 13:30:19

标签: silverlight crossdomain.xml

我有一个托管在IIS上的.asmx Web服务。我接受了服务参考,我从Silverlight应用程序调用此Web服务。但我得到的沟通例外情况如下。

  

尝试制作时发生错误   对URI的请求   'http://test.bookmyshow.com/services/wsDebtorTrans.asmx'。   这可能是由于尝试   以跨域方式访问服务   没有适当的跨域政策   到位,或政策   不适合SOAP服务。你可以   需要联系的所有者   服务以发布跨域   策略文件并确保它允许   要发送的与SOAP相关的HTTP标头。   使用此错误也可能是由此引起的   Web服务中的内部类型   没有使用的代理   InternalsVisibleToAttribute属性。   请查看内部异常   更多细节。

我已将所需的策略文件(clientaccesspolicy.xml和crossdomain.xml)添加到我的Web服务中。以下是我的clientaccesspolicy.xml和crossdomain.xml

的内容

crossdomain.xmlclientaccesspolicy

我尝试从浏览器访问上述两个文件,并在浏览器中正确显示xml文件。我使用了basicHttpBinding。我在网上看过很多教程并试过但是我仍面临同样的问题。我在这里错过了什么吗?请帮我解决这个问题。

1 个答案:

答案 0 :(得分:0)

为了澄清,您只需要CrossDomain.xml个文件或ClientAccessPolicy.xml个文件。你不需要两者。另外,你把这些文件放在哪里了?你把它放在Services文件夹中,还是把它放在服务器的根目录下?例如,http://test.bookmyshow.com/ClientAccessPolicy.xml而不是http://test.bookmyshow.com/Services/ClientAccessPolicy.xml。该文件应放在应用程序的Root中,而不是Services文件夹。