代码之家  ›  专栏  ›  技术社区  ›  Ben

clientaccesspolicy.xml在银色的灯光下

  •  1
  • Ben  · 技术社区  · 14 年前

    我意识到这个问题已经被问了100次了,但是我看了其他的答案,却找不到一个适合我的解决方案。我有一个silverlight4项目,其中包含一个WCF服务。每次向服务发出请求时,都会出现以下错误:

    对URI的请求 http://localhost:54998/MyService.svc '. 这可能是由于试图 以跨域方式访问服务 或者是 不适合SOAP服务。你可以 需要联系房屋的主人 跨域发布服务 要发送的与SOAP相关的HTTP头。 此错误也可能是由于使用 不使用 InternalsVisibleToAttribute属性。 有关详细信息,请参见内部异常 更多细节。

    我读到,当在本地运行时,我的项目将不会使用IIS,因此添加clientaccesspolicy.xml在本地主机中,根是没有意义的(我已经添加了它以防万一)。我需要做什么?

    编辑--- 这是我内心的例外

    {System.Security.SecurityException异常: 安全错误。在 System.Net.Browser浏览器BrowserHttpWebRequest.InternalEndGetResponse行(IAsyncResult) 异步结果) 发送状态)

    谢谢

    2 回复  |  直到 14 年前
        1
  •  1
  •   Rowland Shaw    14 年前

    听起来您需要将web服务项目合并到为客户机提供Silverlight应用程序的web站点项目中。

        2
  •  0
  •   Darin Dimitrov    14 年前

    如果Silverlight应用程序是从不同于承载WCF服务的域上的站点提供的(如果端口号更改,则认为这是跨域的),则需要放置一个 clientaccesspolicy.xml

    http://localhost:54998/clientaccesspolicy.xml
    

    然后它将调用服务:

    http://localhost:54998/MyService.svc