【问题标题】:Find the path to my WSDL找到我的 WSDL 的路径
【发布时间】:2010-07-16 21:55:37
【问题描述】:
我有一个 silverlight 4 应用程序。当我这样做时,它创建了 2 个项目。我实际的 silverlight 应用程序和一个名为 MySolutionName.web 的应用程序(除了托管我的 silverlight 页面之外,不确定它的作用)。
根据this question 的反馈,我将我的 WCF 内容添加到了 MySolution.web 项目中。但是,当我从 silverlight 应用程序调用服务时,返回对象的值为空(只有一个名为 PropertyChanged 的属性为空)。
我想尝试使用 WCF 测试客户端调用 WCF 服务,但我不知道它的 URL。我怎么知道呢?
【问题讨论】:
标签:
silverlight
wcf
silverlight-4.0
wcftestclient
【解决方案1】:
只需查看 Silverlight 应用项目中的 ServiceReferences.ClientConfig 文件即可。
此文件是在您添加服务引用时创建的。
端点元素有一个属性地址。我相信这就是你正在寻找的。
因为您将 WCF 托管在与托管 Silverlight 应用程序的项目不同的项目中
您应该确保在托管 wcf 服务的解决方案/项目中有 clientaccesspolicy.xml 文件。
以下是文件内容的示例:
<?xml version="1.0" encoding="utf-8" ?>
<access-policy>
<cross-domain-access>
<policy>
<allow-from http-request-headers="SOAPAction">
<domain uri="http://*"/>
<domain uri="https://*" />
</allow-from>
<grant-to>
<resource include-subpaths="true" path="/"/>
</grant-to>
</policy>
</cross-domain-access>
</access-policy>
此文件用于跨域调用。默认情况下,Silverlight 只能与生成 xap 文件的域通信。