2009-11-19 56 views
1

这让我在过去的几个小时里疯了。需要帮助,大时间。我在本地机器上开发了一个解决方案,并将其发布到一个网站上,该网站是一个基本的文件上传web服务和一个将文件发布给它的silverlight应用程序。我有一个我尝试加载的文件夹列表,当我调用GetFolders()方法异步返回除了并且导致通信错误:“NotFound”。Silverlight和webservice,无法调用方法,得到“未找到”结果

的Web服务可以用:(文件引用不再可用)

Silverlight应用程序包含两个项目:(文件引用不再可用)(无安全性)和我的web服务代码可以从以下地址下载,其中一个带有silverlight对象和一个主机页面,它们都包含在此下载内容中:(文件参考不再可用)

基本上,silverlight用“GetFolders()”方法填充文件夹的下拉列表,并在终结命令的事件处理程序崩溃了......我花了最后5个小时来回尝试,并且重新写下了整个该死的东西 - 希望这会有所帮助我...任何帮助表示赞赏

服务在本地工作,没有问题...这使得它更:-)糟糕

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

更新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> 

/布赖恩

+0

你是否消除了基本的东西,比如文件系统权限?也许你需要在web服务本身中实现一些日志记录来尝试捕获异常。 – slugster 2009-11-20 02:51:58

+0

我消除了像文件io这样的基本东西。我有一个基本的方式使用这个网络解决方案,它的工作原理(我怀疑,因为它在同一域名green-web.dk)我描述的解决方案正在运行的领域 - 我怀疑一些跨域问题 – H4mm3rHead 2009-11-20 07:10:58

回答

0

解决方案:

看来,clientaccesspolicy.xml文件不应该只存在于子域而且在主要领域,即:它应位于green-web.dk不仅在dsr.green-web.dk。

1

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

我鼓励您使用名为Microsoft Service Trace Viewer的工具来诊断您的问题,我发现这在过去绝对是无价的。可以通过Yi-Lun Luo here找到如何在帖子中使用它的详细信息。

发现
+0

没有得到在日志中的任何东西 - 完全。它写在我的webhotel上的日志,但然后不写更多的东西,就好像我没有“运行”代码 – H4mm3rHead 2009-11-20 00:12:45

+0

现在在我的日志中获取一些东西,只有当我在我的浏览器中重新加载web服务时,它显示一个新的AppDomain卸载事件。 – H4mm3rHead 2009-11-20 00:20:11

相关问题