zoukankan      html  css  js  c++  java
  • Silverlight 2.0 beta 1与crossdomain.xml和clientaccesspolicy.xml

    按照现在社区里大多数的silverlight 2.0教程,在做到与webservice通信的时候通常会遇到这样一个问题,就是crossdomainerror.而关于crossdomain.xmlclientaccesspolicy.xml这两个文件所提及的更是少之又少,甚至在网络上搜索都是关于flash或者flex.我一直就被这个问题困扰着.

    看到silverlight.net上的新视频教程才解决了这个问题.里面提及了一个工具webdevhelper很不错,通过它可以看到一个silverlight应用运行的时候都做了哪些请求(当然,这个工具不只是干这个的).

    在网络上能找到的资料,和在社区交流的信息,都是说把这两个文件其中的一个放到webservice项目根目录就可以了.当然这样我一直没有试验成功.后来通过这个工具,发现,比如我的webservice目录叫做WSProject,引用地址是http://localhost/WSProject/webservice.asmx,那么silverlight不是在http://localhost/WSProject这个目录下找crossdomain.xmlclientaccesspolicy.xml,而是在http://localhost/下找这两个文件.所以假如你的IIS默认目录是C:\inetpub\wwwroot的话,服务文件是部署在C:\inetpub\wwwroot\WSProject,那么crossdomain.xmlclientaccesspolicy.xml这样的文件一定要放在C:\inetpub\wwwroot而不是http://localhost/WSProject.

    另外更多的时候,对于初学者做相关教程的时候,按照教程里的步骤,最后点VS2008里运行的时候,通常是把silverlight程序作为启动项目.我在做到这里的时候就遇到了本文所涉及到的问题.我发现这个时候在项目里添加crossdomain.xmlclientaccesspolicy.xml是无济于事的.VS的小型服务器会给你提供这样的测试环境,http://localhost:端口号/项目名/网页名,如前所述是注定找不到这两个文件的,所以,还是把服务文件先部署到IIS上然后再测试吧.

    关于silverlightflash为什么都需要这样的文件,我还不是很理解,不过可能也是类似于asp.net中的fileupload控件指定文件的那个属性为什么只能是只读一样,肯定是有它的道理的.慢慢去体会了.

     

    希望对和我一样初学的朋友有帮助.

    ---aspnetx

  • 相关阅读:
    Python——极限编程
    RPC是什么?科普一下
    缓存在高并发场景下的常见问题
    如何提高缓存命中率
    数据库性能优化的误区
    缓存在大型网站架构中的应用
    APP多版本共存,服务端如何兼容?
    水平分库分表的关键问题及解决思路
    分库分表的几种常见玩法及如何解决跨库查询等问题
    分布式系统事务一致性解决方案
  • 原文地址:https://www.cnblogs.com/aspnetx/p/1161734.html
Copyright © 2011-2022 走看看