参照ibillguo博主的Silverlight专题(9)-WCF通信(1)创建工程后,按F5后,出现
“
尝试向 URI“http://localhost:53466/WCFSilvelight.Web/Service.svc”发出请求时出错。这可能是由于试图以跨域方式访问服务而又没有正确的跨域策略,或策略不适用于 SOAP 服务。您可能需要与该服务的所有者联系,以发布跨域策略文件并确保该文件允许发送 SOAP 相关的 HTTP 标头。出现此错误也可能是由于使用的是 Web 服务代理中的内部类型而没有使用 InternalsVisibleToAttribute 属性。有关详细信息,请参阅内部异常。
”.
到网上找了一下,说是Silverlight为了安全,默认禁止跨域访问。
要想跨域访问,需要添加“clientaccesspolicy.xml”文件.
添加clientaccesspolicy.xml文件后,还是出现这个问题。不知道是不是我把clientaccesspolicy.xml文件放的位置不对,还是怎么,老是不成功.
添加的clientaccesspolicy.xml文件:
clientaccesspolicy.xml文件添加的位置:不知道对不对???
在浏览器中访问clientaccesspolicy.xml文件:
等待高手答案….
高手答案:
把.Web工程设置为启动项目.
ps:wcf在.web project里不需要设置跨域,本机是可以直接Debug的