我对何时以及如何在Silverlight中使用clientaccessppolicy .xml文件感到困惑。这是干什么用的?现在,我部署的网站(不是本地主机,而是远程服务器)没有它,我仍然可以访问网站,并通过WCF web服务查询数据库。为什么要将它包含在根目录中?
只有当你的Silverlight应用要访问另一个域中的服务时,你才需要它。
e。g(来自MS网站)
"例如,托管在http://contoso.com/mycontrol.aspx上的Silverlight控件默认情况下只能访问同一域中的服务——例如http://contoso.com/service.svc,但不能访问http://fabrikam.com/service.svc上的服务。"
当您的silverlight应用程序试图访问web服务的方法时。对于安全silverlight首先要识别服务是有效的而不是虚假的。silverlight首先请求"clientaccessppolicy .xml"文件,然后请求的web服务将返回xml文件,silverlight检查应用程序是否允许接受来自当前服务的调用,如果是,则应用程序可以自由地对验证服务进行服务调用。