Silverlight调用WebSite类型的WebService,Debug时的跨域问题

SL调用已部署在IIS的WebService时,需要将ClientAccessPolicy.xml放到IIS根目录允许跨域访问

但是在调试阶段,WebService是由ASP.NET Development Server启动的,仍然会有跨域问题

一般的解决方法是将ClientAccessPolicy.xml放在该WebService的根目录下,如图所示:

Silverlight调用WebSite类型的WebService,Debug时的跨域问题

这样对于WebApplication类型的WebService没有问题,但是对于WebSite类型的却不起作用

原因是WebSite默认有一个虚拟路径,其根目录在该虚拟目录下,手工创建该虚拟目录是没用的

将虚拟目录去掉即可解决跨域问题,相应SL项目的服务引用地址也需要跟着修改

Silverlight调用WebSite类型的WebService,Debug时的跨域问题

Silverlight调用WebSite类型的WebService,Debug时的跨域问题

你可能感兴趣的:(silverlight)