好几次了,执行的好好的Silverlight项目调用Web Service时报"System.Security.SecurityException: 安全性错误",如下图所示:
因为这几天只是学习、测试Silverlight的功能,并没有作什么正式的项目,所以每次看到这个就直接重新建一个工程,今天真的不耐烦了,上网找了下原因,大概是Silverlight跨域访问的权限问题,需要在Silverlight的宿主项目(ASP.NET的启动项目)下建立一个"clientaccesspolicy.xml"文件,然后将下面的代码贴到该文件中:
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
![](https://images.cnblogs.com/OutliningIndicators/ExpandedBlockStart.gif)
<?
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 >
< 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 >
重新启动应用程序,OK!