Silverlight和Web服务,无法调用方法,获得“未找到”结果

时间:2009-11-19 23:29:12

标签: silverlight web-services

这让我在过去几个小时里疯狂。需要帮助,很大的时间。我在我的本地机器上开发了一个解决方案,并将其发布到一个网站,它是一个基本的文件上传webservice和一个发布文件的silverlight应用程序。我有一个我试图加载的文件夹列表,当我调用GetFolders()方法时,asynch返回例外并拖拽通信错误:“NotFound”。

Web服务可用于:(文件引用不再可用)(无安全性),我的webservice代码可以从以下网址下载:(文件引用不再可用)

silverlight应用程序包含两个项目,一个包含silverlight对象和一个主机页面,它们都包含在此下载中:(文件引用不再可用)

基本上,silverlight使用“GetFolders()”方法中的文件夹填充下拉列表,并且在end end命令的eventhandler中崩溃...我花了最后5个小时来回尝试,并且距离重写整个该死的东西 - 希望这对我有所帮助...感谢任何帮助

该服务在本地工作,没有问题......这使情况更糟: - )

更新:启用简单测试按钮,并尝试运行“GetFolders()”方法,它返回错误http错误500,这与“NotFound”错误一样通用。< / p>

更新2:在同一个域上运行的网站正常运行。从其他域访问Web服务现在导致了大问题。当我从同一个域运行silverlight应用程序和Web服务时,它工作正常。当它们位于不同的域(例如localhost上的silverlight应用程序)时,则会发生错误。我不拥有Web服务所在的网络酒店所以我无法实现更多的日志记录,我不怀疑这是问题所在。我更倾向于跨域问题,但我不知道如何解决它(我有一个clientaccesspolicy.xml文件与我的.asmx文件在同一级别上看起来像这样:

<?xml version="1.0" encoding="utf-8" ?>
<access-policy>
  <cross-domain-access>
    <policy>
      <allow-from http-request-headers="*">
        <domain uri="*"/>
      </allow-from>
      <grant-to>
        <resource path="/" include-subpaths="true"/>
      </grant-to>
    </policy>
  </cross-domain-access>
</access-policy>

/布赖恩

2 个答案:

答案 0 :(得分:1)

“NotFound”是Silverlight使用的一般错误,它可能意味着什么。

我建议您使用名为Microsoft Service Trace Viewer的工具来诊断您的问题,我发现这在过去非常宝贵。您可以在Yi-Lun Luo here的帖子中找到有关如何使用它的详细信息。

答案 1 :(得分:0)

找到解决方案:

似乎clientaccesspolicy.xml文件不仅应存在于子域中,还应存在于主域中,即:它应位于green-web.dk中,而不仅仅位于dsr.green-web.dk中。