WCF对等聊天应用程序

时间:2015-09-26 14:18:49

标签: c# .net wpf wcf

我刚开始学习WCF。我找到了一个有趣的教程,如何编写点对点聊天。

How to create a peer-to-peer chat application using WPF and wcf in Visual Studio 2010

我做了本教程中显示的所有内容,但我得到了例外。

  

Blockquote XamlParseException未处理。 '调用   类型' ChatGUI.MainWindow'上的构造函数匹配指定的   绑定约束引发了异常。'行号' 3'和线   职位' 9'。

问题在于这一行。

_backend = new ChatBackend.ChatBackend(this.DisplayMessage);

我处理此异常

            try{
                _backend = new ChatBackend.ChatBackend(this.DisplayMessage);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }

并收到以下消息。

  

消息="找不到名称为' ChatEndpoint'的端点元素   和合同' ChatBackend.IChatBackend'在ServiceModel客户端中   配置部分。这可能是因为没有配置文件   找到您的应用程序,或者没有端点元素。

请告知如何解决这种情况。

这是我的App.config

<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <system.serviceModel>
        <bindings>
            <netPeerTcpBinding>
                <binding name="Wimpy">
                    <resolver mode="Pnrp" />
                    <security mode="None" />
                </binding>
            </netPeerTcpBinding>
        </bindings>
        <client>
            <endpoint address="net.p2p://Chat" binding="netPeerTcpBinding"
                bindingConfiguration="Wimpy" contract="ChatBackend.IChatBackend"
                name=" ChatEndpoint" kind="" endpointConfiguration="">
                <identity>
                  <dns value="localhost" />
                    <certificateReference storeName="My" storeLocation="LocalMachine"
                        x509FindType="FindBySubjectDistinguishedName" />
                </identity>
            </endpoint>
        </client>
        <services>
            <service name="ChatBackend.ChatBackend">
                <endpoint address="net.p2p://Chat" binding="netPeerTcpBinding"
                    bindingConfiguration="Wimpy" name="Chat" contract="ChatBackend.IChatBackend" />
            </service>
        </services>
    </system.serviceModel>
</configuration>

0 个答案:

没有答案