`
coolerbaosi
  • 浏览: 729831 次
文章分类
社区版块
存档分类
最新评论

在 ServiceModel 客户端配置部分中,找不到名称

 
阅读更多

今天在测试WCF 服务是时候,在客户端访问服务,使用ChannelFactory<T> 创建契约代理。通过在客户端添加引用生成的config 配置文件,

然后调用测试,结果提示:

在 ServiceModel 客户端配置部分中,找不到名称“WSHttpBinding_ICalculator-sss”和协定“Contracts.ICalculator”的终结点元素。这可能是因为未找到应用程序的配置文件,或者是因为客户端元素中找不到与此名称匹配的终结点元素。

最后终于找到解决办法了:

原因是我把在Client配置节点名称做了更改,这里引用的名称必须和客户端配置文件中的 终点元素名称一致。

using (ChannelFactory<ICalculator> dd = new ChannelFactory<ICalculator>("myCalculator"))

客户端配置文件:

<client>
<endpoint address="http://127.0.0.1:9999/CalculatorService" binding="wsHttpBinding"
bindingConfiguration="WSHttpBinding_ICalculator" contract="Contracts.ICalculator"
name="myCalculator">
<identity>
<userPrincipalName value="CHINESE-E8DD5F6\Administrator" />
</identity>
</endpoint>
</client>

同时保证参数配置必须保证和服务契约配置名称一致,否则就会报此类错误(建议以后大家不要随便更改自动生成终点元素,)。



分享到:
评论
Global site tag (gtag.js) - Google Analytics