我使用的是silverlight和wcf,当我使用.web项目时,它会运行,但当使用silver light项目运行时,会抛出以下异常:
尝试向URI 'http://localhost:9000/Services/BLWCFSvrc.svc‘发出请求时出错。这可能是由于试图在没有适当的跨域策略的情况下以跨域的方式访问服务,或者是因为策略不适合SOAP服务。您可能需要联系服务的所有者以发布跨域策略文件,并确保它允许发送与SOAP相关的HTTP标头。此错误也可能是由于在web服务代理中使用内部类型而未使用InternalsVisibleToAttribute属性造成的。更多详情请参见内部异常。
我想使用silverlight项目来调试我的代码
提前感谢
发布于 2009-12-02 16:27:54
为了从Silverlight访问网络资源,托管资源的域必须提供客户端访问策略文件;出于安全原因,这种设计方式。详情请看这里:http://msdn.microsoft.com/en-us/library/cc645032%28VS.95%29.aspx
发布于 2009-12-02 17:17:48
只需将一个clientaccesspolicy.xml文件(例如,使用look at this post;您甚至可以使用此示例)复制到for服务器的根目录(例如:**c:\inetpub**)。
这应该会有帮助。
发布于 2009-12-04 06:13:52
我认为你的问题是不同的,只有clientaccesspolicy.xml,它在web项目下运行的事实,意味着你正在交付策略,如果你在web项目下将那些作为单独的文件添加,那么当你单独运行SL3应用程序时,它们不会被部署,但我相信你已经弄清楚了,你正在使用webHttp绑定(RESTful风格)通过WCF来交付策略,如果没有,你应该这样做。
我认为问题在于,当您运行when项目时,它将构建到您的本地IIS并从那里执行,IIS将允许SL3应用程序使用不同于托管站点的端口/地址进行通信
当你在本地运行SL3应用程序时,VS2008自动生成一个测试html站点,以便使用一些默认设置在其中进行托管,并使用VS2008内置托管服务,该服务不允许与不同于托管地址的地址/端口进行通信。(尽管Silverlight是一个客户端库,但VS2008可以做到这一点)
因此,如果您想在本地运行Silverlight应用程序,即实际执行XAP,您可以将其部署到IIS,并配置IIS以提供XAP文件,或者只是安装它并在浏览器之外运行它,让它从部署的IIS版本更新
https://stackoverflow.com/questions/1831406
复制相似问题