NetTcpBinding 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
一种适合于跨计算机通信的安全可靠的绑定。
public ref class NetTcpBinding : System::ServiceModel::Channels::Binding
public ref class NetTcpBinding : System::ServiceModel::Channels::Binding, System::ServiceModel::Channels::IBindingRuntimePreferences
public class NetTcpBinding : System.ServiceModel.Channels.Binding
public class NetTcpBinding : System.ServiceModel.Channels.Binding, System.ServiceModel.Channels.IBindingRuntimePreferences
type NetTcpBinding = class
inherit Binding
type NetTcpBinding = class
inherit Binding
interface IBindingRuntimePreferences
Public Class NetTcpBinding
Inherits Binding
Public Class NetTcpBinding
Inherits Binding
Implements IBindingRuntimePreferences
- 继承
- 派生
- 实现
示例
此示例演示如何创建、 NetTcpBinding设置安全模式和传输凭据类型。
NetTcpBinding binding = new NetTcpBinding();
binding.Security.Mode = SecurityMode.Transport;
binding.Security.Transport.ClientCredentialType = TcpClientCredentialType.Certificate;
注解
默认情况下,生成 NetTcpBinding 运行时通信堆栈,该堆栈使用传输安全性、TCP 进行消息传递和二进制消息编码。 此绑定是 Windows Communication Foundation (WCF) 系统提供的一个可用于 Intranet 上通信的合适选项。
NetTcpBinding 的默认配置比 WSHttpBinding 提供的配置更快,但是只适用于 WCF 通信。 安全行为可通过在构造函数中使用可选的 securityMode
参数进行配置。 通过使用可选的 reliableSessionEnabled
参数,可以配置 WS-ReliableMessaging 的用法。 但是在默认情况下可靠消息传递为关闭状态。 一般来说,HTTP 系统提供的绑定(如 WSHttpBinding 和 BasicHttpBinding)是默认配置为打开事项,而 NetTcpBinding 绑定是默认配置为关闭事项,因此,你必须选择性加入所需事项才能获取支持,例如获取对一种 WS-* 规范的支持。 这意味着在终结点之间交换消息方面,TCP 的默认配置比 HTTP 绑定的默认配置更快。
警告
它 NetTcpBinding 使用基于服务的主机 DNS 名称和服务正在侦听的端口号的 TCP 连接池。 当客户端在不同端口上对不同服务进行调用时,或者服务托管在单个进程中并共享端口时,这一点非常有效。 如果单个客户端调用多个服务,共享在不同进程中托管的端口,或者托管了 WAS/IIS,则客户端池可能会导致服务 B 重用到服务 A 的连接的问题,从而导致引发异常、连接中止和创建新通道。 若要避免此问题,请使用 CustomBinding 并为客户端与之通信的每个服务指定不同的 ConnectionPoolSettings.GroupName。
构造函数
NetTcpBinding() |
初始化 NetTcpBinding 类的新实例。 |
NetTcpBinding(SecurityMode) |
用所使用的指定安全类型初始化 NetTcpBinding 类的新实例。 |
NetTcpBinding(SecurityMode, Boolean) |
用所使用的指定安全类型和一个指示是否显式启用安全会话的值来初始化 NetTcpBinding 类的新实例。 |
NetTcpBinding(String) |
使用指定配置名称初始化 NetTcpBinding 类的新实例。 |
属性
CloseTimeout |
获取或设置在传输引发异常之前可用于关闭连接的时间间隔。 (继承自 Binding) |
EnvelopeVersion |
获取此绑定处理的消息将要使用的 SOAP 版本。 |
HostNameComparisonMode |
获取或设置一个值,该值指示在对 URI 进行匹配时,是否使用主机名来访问服务。 |
ListenBacklog |
获取或设置可挂起的最大排队连接请求数。 |
MaxBufferPoolSize |
获取或设置缓冲池允许的最大大小(以字节为单位),该缓冲池用于存储由绑定处理的 TCP 消息。 |
MaxBufferSize |
获取或设置一个值,该值指定内存中用于存储消息的缓冲区的最大大小(以字节为单位)。 |
MaxConnections |
获取或设置一个值,该值控制客户端上可存入池中以备后续重复使用的最大连接数,以及服务器上可挂起调度的最大连接数。 |
MaxReceivedMessageSize |
获取或设置绑定可处理的消息最大接收字节大小。 |
MessageVersion |
获取由绑定所配置的客户端和服务使用的消息版本。 (继承自 Binding) |
Name |
获取或设置绑定的名称。 (继承自 Binding) |
Namespace |
获取或设置绑定的 XML 命名空间。 (继承自 Binding) |
OpenTimeout |
获取或设置在传输引发异常之前可用于打开连接的时间间隔。 (继承自 Binding) |
PortSharingEnabled |
获取或设置一个值,该值指示是否为采用此绑定配置的连接启用 TCP 端口共享。 |
ReaderQuotas |
获取或设置可由配置了此绑定的终结点处理的 SOAP 消息的复杂性约束。 |
ReceiveTimeout |
获取或设置连接在撤消之前保持非活动状态的最大时间间隔,在此时间间隔内未接收任何应用程序消息。 (继承自 Binding) |
ReliableSession |
获取一个对象,该对象指示是否在通道终结点之间建立可靠会话。 |
Scheme |
返回传输的 URI 方案。 |
Security |
获取一个对象,该对象指定与采用此绑定配置的服务一起使用的安全类型。 |
SendTimeout |
获取或设置在传输引发异常之前可用于完成写入操作的时间间隔。 (继承自 Binding) |
TransactionFlow |
获取或设置一个值,该值确定是否启用事务流。 |
TransactionProtocol |
获取或设置服务在对事务进行流处理时使用的事务处理协议。 |
TransferMode |
获取或设置一个值,该值指示使用此绑定配置的服务是使用消息传输的流处理模式、缓冲模式还是同时使用这两种模式。 |
方法
显式接口实现
IBindingRuntimePreferences.ReceiveSynchronously |
获取一个值,该值指示是同步处理传入请求还是异步处理传入请求。 |