代码之家  ›  专栏  ›  技术社区  ›  H4mm3rHead

Silverlight和WebService,无法调用方法,获取“NotFound”结果

  •  1
  • H4mm3rHead  · 技术社区  · 15 年前

    这让我在过去的几个小时里发疯了。需要帮助,大忙。我在本地计算机上开发了一个解决方案,并将其发布到一个网站上,它是一个基本的文件上载Web服务和一个向其发布文件的Silverlight应用程序。我有一个文件夹列表,当我调用getfolders()方法时,Asynch返回异常并引发一个通信错误:“NotFound”。

    WebService在以下位置可用:(文件引用不再可用)(无安全性)并且可以从以下位置下载我的WebService代码:(文件引用不再可用)

    Silverlight应用程序由两个项目组成,一个项目带有Silverlight对象和一个主机页,它们都包含在此下载中:(不再提供文件引用)

    基本上,Silverlight使用“getfolders()”方法中的文件夹填充下拉列表,并且在END END命令的事件处理程序中,它会崩溃…我花了5个小时来来回回的尝试,我离重新写这该死的东西还有一英寸的距离-希望这能帮助我……任何帮助都会得到感激。

    服务在本地工作,没有问题……这使它更糟:—)

    更新: 启用了简单测试按钮,并尝试运行“getfolders()”方法,它返回了一个错误http错误500,与“notfound”错误一样通用。

    更新2: 在同一域上运行的网站运行正常。从另一个域访问Web服务现在造成了很大的问题。当我从同一个域运行Silverlight应用程序和Web服务时,它工作正常。当它们位于不同的域(例如本地主机上的Silverlight应用程序)上时,就会发生错误。我不拥有Web服务所在的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 回复  |  直到 13 年前
        1
  •  1
  •   slugster Joey Cai    15 年前

    “NotFound”是Silverlight使用的一般性错误,它可能意味着任何事情。

    我建议您使用一个名为Microsoft Service Trace Viewer的工具来诊断您的问题,我发现这在过去是非常宝贵的。你可以在易伦洛的文章中找到如何使用它的细节。 here .

        2
  •  0
  •   MPelletier    13 年前

    解决方案:

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