转自:http://www.cnblogs.com/anncesky/articles/1776287.html
第一个就是要解决SL访问Web Service跨域访问的问题
看MSDN和网上的资料,里面都说在
- 在承载服务的域的根目录中放置一个 clientaccesspolicy.xml 文件,以配置服务允许跨域访问。 <? xml version="1.0" encoding="utf-8" ?> < access-policy > < cross-domain-access > < policy > < allow-from http-request-headers ="SOAPAction" > < domain uri ="*" /> </ allow-from > < grant-to > < resource path ="/" include-subpaths ="true" /> </ grant-to > </ policy > </ cross-domain-access > </ access-policy >
- 在承载服务的域的根目录中放置一个有效的 crossdomain.xml 文件。 该文件必须将整个域标记为 public。Silverlight 支持 crossdomain.xml 架构 的一个子集。 <? xml version="1.0" ?> <! DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd" > < cross-domain-policy > < allow-http-request-headers-from domain ="*" headers ="SOAPAction,Content-Type" /> </ cross-domain-policy >
不过相信很多朋友还是用WIN XP做开发环境,很自然地就会把这两个文件放在了和WEB SERVICE相同的文件件下。这就会导制错误。
正确的做法是应该把这两个文件放在IIS“默认网站”所映射的目录下。