NetTcpBinding Класс

Определение

Безопасная и надежная привязка, которая подходит для обмена данными между компьютерами.A secure, reliable binding suitable for cross-machine communication.

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 , задать режим безопасности и тип учетных данных транспорта.This example shows how to create a NetTcpBinding, setting the security mode and transport credential type.

NetTcpBinding binding = new NetTcpBinding();
binding.Security.Mode = SecurityMode.Transport;
binding.Security.Transport.ClientCredentialType = TcpClientCredentialType.Certificate;

Комментарии

NetTcpBindingКомпонент создает стек связи времени выполнения по умолчанию, который использует безопасность транспорта, TCP для доставки сообщений и двоичную кодировку сообщений.The NetTcpBinding generates a run-time communication stack by default, which uses transport security, TCP for message delivery, and a binary message encoding. Эта привязка является подходящей системой Windows Communication Foundation (WCF), предоставляемой для взаимодействия через интрасеть.This binding is an appropriate Windows Communication Foundation (WCF) system-provided choice for communicating over an Intranet.

Конфигурация по умолчанию для NetTcpBinding работает быстрее, чем конфигурация, предоставляемая WSHttpBinding , но она предназначена только для взаимодействия WCF.The default configuration for the NetTcpBinding is faster than the configuration provided by the WSHttpBinding, but it is intended only for WCF communication. Поведение безопасности настраивается с помощью необязательного параметра securityMode в конструкторе.The security behavior is configurable using the optional securityMode parameter in the constructor. Использование WS-ReliableMessaging настраивается с использованием необязательного параметра reliableSessionEnabled.The use of WS-ReliableMessaging is configurable using the optional reliableSessionEnabled parameter. Но по умолчанию надежный обмен сообщениями отключен.But reliable messaging is off by default. В общем случае системные привязки по протоколу HTTP, такие как WSHttpBinding и BasicHttpBinding, настроены на включение основных возможностей по умолчанию, в то время как привязка NetTcpBinding по умолчанию отключает возможности, так что для получения поддержки, например для спецификаций WS-*, необходимо специально их включить.More generally, the HTTP system-provided bindings such as WSHttpBinding and BasicHttpBinding are configured to turn things on by default, whereas the NetTcpBinding binding turns things off by default so that you have to opt-in to get support, for example, for one of the WS-* specifications. Это означает, что используемая по умолчанию конфигурация для TCP быстрее при обмене сообщениями между конечными точками, чем конфигурация по умолчанию для привязок HTTP.This means that the default configuration for TCP is faster at exchanging messages between endpoints than that configured for the HTTP bindings by default.

Предупреждение

NetTcpBindingИспользует пул соединений TCP на основе DNS-имени узла службы и номера порта, который прослушивает служба.The NetTcpBinding uses TCP connection pooling based on the service's host DNS name and the port number the service is listening on. Это хорошо работает, когда клиент выполняет вызовы различных служб на разных портах, или службы размещаются в одном процессе и совместно используют порт.This works well when a client makes calls to different services on different ports, or services are hosted in a single process and share a port. Если один клиент вызывает несколько служб, совместно использующих порт, размещенный в разных процессах или размещенных в службах IIS, клиентские пулы могут привести к проблемам, при которых подключение к службе A используется повторно для службы б, что приводит к возникновению исключения, прерывание соединения и созданию нового канала.If a single client calls multiple services sharing a port that are hosted in different processes, or are WAS/IIS hosted, the client side pooling may lead to problems where a connection to Service A is reused for Service B, resulting in an exception being thrown, the connection aborted, and a new channel created. Чтобы избежать этой проблемы, используйте CustomBinding и укажите другой Коннектионпулсеттингс. GroupName для каждой службы, с которой взаимодействует клиент.To avoid this problem, use a CustomBinding and specify a different ConnectionPoolSettings.GroupName for each service the client communicates with.

Конструкторы

NetTcpBinding()

Инициализирует новый экземпляр класса NetTcpBinding.Initializes a new instance of the NetTcpBinding class.

NetTcpBinding(SecurityMode)

Инициализирует новый экземпляр класса NetTcpBinding с указанным используемый типом безопасности.Initializes a new instance of the NetTcpBinding class with the type of security used specified.

NetTcpBinding(SecurityMode, Boolean)

Инициализирует новый экземпляр класса NetTcpBinding с указанным используемым типом безопасности и значением, указывающим, разрешены ли в явном виде надежные сеансы.Initializes a new instance of the NetTcpBinding class with the type of security used specified and with a value that indicates whether reliable sessions are explicitly enabled.

NetTcpBinding(String)

Инициализирует новый экземпляр класса NetTcpBinding с указанным именем конфигурации.Initializes a new instance of the NetTcpBinding class with a specified configuration name.

Свойства

CloseTimeout

Возвращает или задает интервал времени для закрытия подключения до того, как транспорт создаст исключение.Gets or sets the interval of time provided for a connection to close before the transport raises an exception.

(Унаследовано от Binding)
EnvelopeVersion

Возвращает версию протокола SOAP, используемого для сообщений, обрабатываемых этой привязкой.Gets the version of SOAP that is used for messages processed by this binding.

HostNameComparisonMode

Возвращает или задает значение, которое указывает, используется ли имя узла для доступа к службе при сравнении по универсальному коду ресурса (URI).Gets or sets a value that indicates whether the hostname is used to reach the service when matching the URI.

ListenBacklog

Возвращает или задает максимально допустимое количество ожидающих запросов на подключение в очереди.Gets or sets the maximum number of queued connection requests that can be pending.

MaxBufferPoolSize

Получает или задает максимальный допустимый размер (в байтах) буферного пула, в котором хранятся сообщения TCP, обработанные привязкой.Gets or sets the maximum size, in bytes, allowed for a buffer pool that stores TCP messages processed by the binding.

MaxBufferSize

Возвращает или задает значение, указывающее максимальный размер буфера, используемого для хранения сообщений в памяти (в байтах).Gets or sets a value that specifies the maximum size, in bytes, of the buffer used to store messages in memory.

MaxConnections

Возвращает или задает значение, которое определяет максимальное количество подключений, помещаемых в пул для последующего повторного использования на стороне клиента, и максимальное количество подключений, которые могут ожидать перенаправления на стороне сервера.Gets or sets a value that controls the maximum number of connections to be pooled for subsequent reuse on the client and the maximum number of connections allowed to be pending dispatch on the server.

MaxReceivedMessageSize

Получает или задает максимальный размер (в байтах) полученного сообщения, обрабатываемого привязкой.Gets or sets the maximum size, in bytes, for a received message that is processed by the binding.

MessageVersion

Возвращает версию сообщения, используемую клиентами и службами, настроенными с использованием привязки.Gets the message version used by clients and services configured with the binding.

(Унаследовано от Binding)
Name

Возвращает или задает имя привязки.Gets or sets the name of the binding.

(Унаследовано от Binding)
Namespace

Возвращает или задает пространство имен XML привязки.Gets or sets the XML namespace of the binding.

(Унаследовано от Binding)
OpenTimeout

Возвращает или задает интервал времени для открытия подключения до того, как транспорт создаст исключение.Gets or sets the interval of time provided for a connection to open before the transport raises an exception.

(Унаследовано от Binding)
PortSharingEnabled

Возвращает или задает значение, определяющее, включено ли совместное использование порта TCP для соединения, настроенного с этой привязкой.Gets or sets a value that indicates whether TCP port sharing is enabled for the connection configured with this binding.

ReaderQuotas

Возвращает или задает ограничения по сложности сообщений SOAP, которые могут обрабатываться конечными точками, настроенными с этой привязкой.Gets or sets constraints on the complexity of SOAP messages that can be processed by endpoints configured with this binding.

ReceiveTimeout

Возвращает или задает интервал времени бездействия подключения, в течение которого сообщения приложения не получаются, до его сброса.Gets or sets the interval of time that a connection can remain inactive, during which no application messages are received, before it is dropped.

(Унаследовано от Binding)
ReliableSession

Возвращает объект, указывающий, установлен ли надежный сеанс между конечными точками канала.Gets an object that indicates whether a reliable session is established between channel endpoints.

Scheme

Возвращает схему универсального кода ресурса (URI) для транспорта.Returns the URI scheme for the transport.

Security

Возвращает объект, указывающий тип безопасности, который используется со службами, настроенными с этой привязкой.Gets an object that specifies the type of security used with services configured with this binding.

SendTimeout

Возвращает или задает интервал времени для завершения операции записи до того, как транспорт создаст исключение.Gets or sets the interval of time provided for a write operation to complete before the transport raises an exception.

(Унаследовано от Binding)
TransactionFlow

Возвращает или задает значение, определяющее, включен ли поток транзакций.Gets or sets a value that determines whether transaction flow is enabled.

TransactionProtocol

Возвращает или задает протокол транзакций, используемый службой для передачи транзакций.Gets or sets the transactions protocol used by the service to flow transactions.

TransferMode

Возвращает или задает значение, которое определяет, используется ли в службе, настроенной с помощью привязки, потоковый или буферизованный режим передачи сообщений (или оба режима).Gets or sets a value that indicates whether the service configured with the binding uses streamed or buffered (or both) modes of message transfer.

Методы

BuildChannelFactory<TChannel>(BindingParameterCollection)

Выполняет построение на клиенте стека фабрики каналов, создающего каналы заданного типа и удовлетворяющего заданным коллекцией привязки параметрам.Builds the channel factory stack on the client that creates a specified type of channel and that satisfies the features specified by a collection of binding parameters.

(Унаследовано от Binding)
BuildChannelFactory<TChannel>(Object[])

Выполняет построение на клиенте стека фабрики каналов, создающего каналы заданного типа и удовлетворяющего заданным массивом объектов параметрам.Builds the channel factory stack on the client that creates a specified type of channel and that satisfies the features specified by an object array.

(Унаследовано от Binding)
BuildChannelListener<TChannel>(BindingParameterCollection)

Выполняет построение на стороне службы прослушивателя каналов, принимающего каналы заданного типа и удовлетворяющего заданным коллекцией привязки параметрам.Builds the channel listener on the service that accepts a specified type of channel and that satisfies the features specified by a collection of binding parameters.

(Унаследовано от Binding)
BuildChannelListener<TChannel>(Object[])

Выполняет построение на стороне службы прослушивателя каналов, принимающего каналы заданного типа и удовлетворяющего заданным параметрам.Builds the channel listener on the service that accepts a specified type of channel and that satisfies the features specified.

(Унаследовано от Binding)
BuildChannelListener<TChannel>(Uri, BindingParameterCollection)

Выполняет построение на стороне службы прослушивателя каналов, принимающего каналы заданного типа и удовлетворяющего заданным параметрам.Builds the channel listener on the service that accepts a specified type of channel and that satisfies the features specified.

(Унаследовано от Binding)
BuildChannelListener<TChannel>(Uri, Object[])

Выполняет построение на стороне службы прослушивателя каналов, принимающего каналы заданного типа и удовлетворяющего заданным параметрам.Builds the channel listener on the service that accepts a specified type of channel and that satisfies the features specified.

(Унаследовано от Binding)
BuildChannelListener<TChannel>(Uri, String, BindingParameterCollection)

Выполняет построение на стороне службы прослушивателя каналов, принимающего каналы заданного типа и удовлетворяющего заданным параметрам.Builds the channel listener on the service that accepts a specified type of channel and that satisfies the features specified.

(Унаследовано от Binding)
BuildChannelListener<TChannel>(Uri, String, ListenUriMode, BindingParameterCollection)

Выполняет построение на стороне службы прослушивателя каналов, принимающего каналы заданного типа и удовлетворяющего заданным параметрам.Builds the channel listener on the service that accepts a specified type of channel and that satisfies the features specified.

(Унаследовано от Binding)
BuildChannelListener<TChannel>(Uri, String, ListenUriMode, Object[])

Выполняет построение на стороне службы прослушивателя каналов, принимающего каналы заданного типа и удовлетворяющего заданным параметрам.Builds the channel listener on the service that accepts a specified type of channel and that satisfies the features specified.

(Унаследовано от Binding)
BuildChannelListener<TChannel>(Uri, String, Object[])

Выполняет построение на стороне службы прослушивателя каналов, принимающего каналы заданного типа и удовлетворяющего заданным параметрам.Builds the channel listener on the service that accepts a specified type of channel and that satisfies the features specified.

(Унаследовано от Binding)
CanBuildChannelFactory<TChannel>(BindingParameterCollection)

Возвращает значение, указывающее, может ли текущая привязка выполнить построение на клиенте стека фабрики каналов, удовлетворяющего заданной коллекции параметров привязки.Returns a value that indicates whether the current binding can build a channel factory stack on the client that satisfies the collection of binding parameters specified.

(Унаследовано от Binding)
CanBuildChannelFactory<TChannel>(Object[])

Возвращает значение, указывающее, может ли текущая привязка выполнить построение на клиенте стека фабрики каналов, удовлетворяющего заданным массивом объектов требованиям.Returns a value that indicates whether the current binding can build a channel factory stack on the client that satisfies the requirements specified by an object array.

(Унаследовано от Binding)
CanBuildChannelListener<TChannel>(BindingParameterCollection)

Возвращает значение, указывающее, может ли текущая привязка выполнить построение на стороне службы стека прослушивателя каналов, удовлетворяющего заданной коллекции параметров привязки.Returns a value that indicates whether the current binding can build a channel listener stack on the service that satisfies the collection of binding parameters specified.

(Унаследовано от Binding)
CanBuildChannelListener<TChannel>(Object[])

Возвращает значение, указывающее, может ли текущая привязка выполнить построение на стороне службы стека прослушивателя каналов, удовлетворяющего заданным в массиве объектов критериям.Returns a value that indicates whether the current binding can build a channel listener stack on the service that satisfies the criteria specified in an array of objects.

(Унаследовано от Binding)
CreateBindingElements()

Создает коллекцию с элементами привязки для привязки.Creates a collection with the binding elements for the binding.

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.Determines whether the specified object is equal to the current object.

(Унаследовано от Object)
GetHashCode()

Служит хэш-функцией по умолчанию.Serves as the default hash function.

(Унаследовано от Object)
GetProperty<T>(BindingParameterCollection)

Возвращает запрошенный типизированный объект, если он имеется, из соответствующего уровня стека привязок.Returns a typed object requested, if present, from the appropriate layer in the binding stack.

(Унаследовано от Binding)
GetType()

Возвращает объект Type для текущего экземпляра.Gets the Type of the current instance.

(Унаследовано от Object)
MemberwiseClone()

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

(Унаследовано от Object)
ShouldSerializeListenBacklog()

Возвращает значение, указывающее, изменилось ли значение свойства ListenBacklog относительно значения по умолчанию и нужно ли его сериализовать.Returns a value that indicates whether the ListenBacklog property has changed from its default value and should be serialized.

ShouldSerializeMaxConnections()

Возвращает значение, указывающее, изменилось ли значение свойства MaxConnections относительно значения по умолчанию и нужно ли его сериализовать.Returns a value that indicates whether the MaxConnections property has changed from its default value and should be serialized.

ShouldSerializeName()

Возвращает значение, которое указывает, должно ли быть сериализовано имя привязки.Returns whether the name of the binding should be serialized.

(Унаследовано от Binding)
ShouldSerializeNamespace()

Возвращает значение, которое указывает, должно ли быть сериализовано пространство имен привязки.Returns whether the namespace of the binding should be serialized.

(Унаследовано от Binding)
ShouldSerializeReaderQuotas()

Возвращает значение, указывающее, изменилось ли значение свойства ReaderQuotas относительно значения по умолчанию и нужно ли его сериализовать.Returns a value that indicates whether the ReaderQuotas property has changed from its default value and should be serialized.

ShouldSerializeReliableSession()

Возвращает значение, указывающее, изменилось ли значение свойства ReliableSession относительно значения по умолчанию и нужно ли его сериализовать.Returns a value that indicates whether the ReliableSession property has changed from its default value and should be serialized.

ShouldSerializeSecurity()

Возвращает значение, указывающее, изменилось ли значение свойства Security относительно значения по умолчанию и нужно ли его сериализовать.Returns a value that indicates whether the Security property has changed from its default value and should be serialized.

ShouldSerializeTransactionProtocol()

Возвращает значение, указывающее, изменилось ли значение свойства TransactionProtocol относительно значения по умолчанию и нужно ли его сериализовать.Returns a value that indicates whether the TransactionProtocol property has changed from its default value and should be serialized.

ToString()

Возвращает строку, представляющую текущий объект.Returns a string that represents the current object.

(Унаследовано от Object)

Явные реализации интерфейса

IBindingRuntimePreferences.ReceiveSynchronously

Возвращает значение, указывающее, синхронно или асинхронно обрабатываются входящие запросы.Gets a value that indicates whether incoming requests are handled synchronously or asynchronously.

Применяется к