案例下载
http://download.csdn.net/detail/woxpp/4113172
服务端配置代码
<system.serviceModel> <services> <service name="WcfServiceLibrary.ServiceTcp"> <endpoint address="net.tcp://localhost:8731/WcfServiceLibrary" binding="netTcpBinding" bindingConfiguration="testnetTcpBinding" contract="WcfServiceLibrary.IServiceTcp"> <identity> <dns value="localhost" /> </identity> </endpoint> <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" /> <host> <baseAddresses> <add baseAddress="http://localhost:8732/WcfServiceLibrary" /> </baseAddresses> </host> </service> </services> <behaviors> <serviceBehaviors> <behavior> <!-- 为避免泄漏元数据信息, 请在部署前将以下值设置为 false 并删除上面的元数据终结点 --> <serviceMetadata httpGetEnabled="True"/> <!-- 要接收故障异常详细信息以进行调试, 请将以下值设置为 true。在部署前设置为 false 以避免泄漏异常信息--> <serviceDebug includeExceptionDetailInFaults="False" /> </behavior> </serviceBehaviors> </behaviors> <bindings> <netTcpBinding> <binding name="testnetTcpBinding"> <security mode="None"></security> </binding> </netTcpBinding> </bindings> </system.serviceModel>
客户端调用代码 通过代理 代理生成 参见
http://www.cnblogs.com/woxpp/p/6232298.html
客户端调用代码
private void btnTest_Click(object sender, EventArgs e) { NetTcpBinding netTcp = new NetTcpBinding(); ChannelFactory<IServiceTcp> ftc = new ChannelFactory<IServiceTcp>(); netTcp.Security.Mode = SecurityMode.None; IServiceTcp proxy = ChannelFactory<IServiceTcp>.CreateChannel(netTcp, new EndpointAddress("net.tcp://127.0.0.1:8731/WcfServiceLibrary")); txtMessage.Text = proxy.GetDataUsingDataContract(new WcfServiceLibrary.CompositeType() { StringValue = "sssss" }).StringValue; }