现在的位置: 首页 > 综合 > 正文

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

2014年01月05日 ⁄ 综合 ⁄ 共 846字 ⁄ 字号 评论关闭

        今天在测试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>

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

【上篇】
【下篇】

抱歉!评论已关闭.