System.ServiceModel 4.0.0.0 System.ServiceModel.Channels.Binding System.ServiceModel.Channels.IBindingRuntimePreferences

The generates a run-time communication stack by default, which uses transport security, TCP for message delivery, and a binary message encoding. This binding is an appropriate indigo1 system-provided choice for communicating over an Intranet.

The default configuration for the is faster than the configuration provided by the , but it is intended only for indigo2-to-indigo2 communication. The security behavior is configurable using the optional parameter in the constructor. The use of WS-ReliableMessaging is configurable using the optional parameter. But reliable messaging is off by default. More generally, the HTTP system-provided bindings such as and are configured to turn things on by default, whereas the binding turns things off by default so that you have to opt-in to get support, for example, for one of the WS-* specifications. This means that the default configuration for TCP is faster at exchanging messages between endpoints than that configured for the HTTP bindings by default.

The 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. 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. To avoid this problem, use a CustomBinding and specify a different ConnectionPoolSettings.GroupName for each service the client communicates with.

A secure, reliable binding suitable for cross-machine communication.

- Constructor
  4.0.0.0

  By default, transport security is used to secure communication (that is, the value of is set to ) and reliable sessions are disabled (that is is false).

  Initializes a new instance of the class.

- Constructor
  4.0.0.0

  Use this constructor when you want to configure the security. If you want to configure security and enable reliable sessions, use .

  Initializes a new instance of the class with the type of security used specified.

  The value that specifies the type of security used with the binding.
- Constructor
  4.0.0.0

  Use this constructor when you want to initialize the binding settings from configuration.

  Initializes a new instance of the class with a specified configuration name.

  The binding configuration name for the .
- Constructor
  4.0.0.0

  Use this constructor when you want to configure the security and enable reliable sessions.

  Initializes a new instance of the class with the type of security used specified and with a value that indicates whether reliable sessions are explicitly enabled.

  The value that specifies the type of security used with the binding.
  true if reliable sessions are enabled; otherwise, false.
- Method
  4.0.0.0
  System.ServiceModel.Channels.BindingElementCollection To be added.

  Creates a collection with the binding elements for the binding.

  The of type that makes up the binding.

- Property
  4.0.0.0
  System.ServiceModel.EnvelopeVersion To be added.

  The property always returns SOAP 1.2. This value cannot be changed.

  Gets the version of SOAP that is used for messages processed by this binding.

- Property
  4.0.0.0
  System.ServiceModel.HostNameComparisonMode To be added. To be added.

  Gets or sets a value that indicates whether the hostname is used to reach the service when matching the URI.

- Property
  4.0.0.0
  System.Int32 To be added.

  is a socket-level property that describes the number of "pending accept" requests to be queued. If the listen backlog queue fills up, new socket requests will be rejected.

  Gets or sets the maximum number of queued connection requests that can be pending.

- Property
  4.0.0.0
  System.Int64 To be added.

  If you receive more data than you can buffer, the data that exceeds the buffer size remains on the underlying socket until your buffer has room for the rest of the data.

  Gets or sets the maximum size, in bytes, allowed for a buffer pool that stores TCP messages processed by the binding.

- Property
  4.0.0.0
  System.Int32 To be added.

  If you receive more data than you can buffer, the data that exceeds the buffer size remains on the underlying socket until your buffer has room for the rest of the data.

  Gets or sets a value that specifies the maximum size, in bytes, of the buffer used to store messages in memory.

- Property
  4.0.0.0
  System.Int32 To be added.

  The default value is 10.

  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.

- Property
  4.0.0.0
  System.Int64 To be added. To be added.

  Gets or sets the maximum size, in bytes, for a received message that is processed by the binding.

- Property
  4.0.0.0
  System.Boolean To be added.

  Using this setting requires enabling the indigo1 TCP Port Sharing Service by changing its startup type to Manual or Automatic.

  crabout the TCP Listener and how to start it, see .

  Gets or sets a value that indicates whether TCP port sharing is enabled for the connection configured with this binding.

- Property
  4.0.0.0
  System.Xml.XmlDictionaryReaderQuotas To be added.

  The complexity constraints protect against a class of denial of service (DOS) attacks that attempt to use message complexity to tie up endpoint processing resources. The properties that express these constraints and their default values are as follows:

  = 32

  = 8192

  = 16384

  = 4096

  = 16384

  Gets or sets constraints on the complexity of SOAP messages that can be processed by endpoints configured with this binding.

- Property
  4.0.0.0
  System.ServiceModel.OptionalReliableSession To be added. To be added.

  Gets an object that indicates whether a reliable session is established between channel endpoints.

- Property
  4.0.0.0
  System.String To be added.

  The property is provided to validate bindings against base addresses.

  Returns the URI scheme for the transport.

- Property
  4.0.0.0
  System.ServiceModel.NetTcpSecurity To be added.

  The provides the types of security and settings available to the .

  Gets an object that specifies the type of security used with services configured with this binding.

- Property
  4.0.0.0
  System.Boolean To be added.

  This run-time behavior for receiving messages in either a service or client application can be changed using <synchronousReceive> element.

  Gets a value that indicates whether incoming requests are handled synchronously or asynchronously.

- Property
  4.0.0.0
  System.Boolean To be added. To be added.

  Gets or sets a value that determines whether transaction flow is enabled.

- Property
  4.0.0.0
  System.ServiceModel.TransactionProtocol To be added. To be added.

  Gets or sets the transactions protocol used by the service to flow transactions.

- Property
  4.0.0.0
  System.ServiceModel.TransferMode To be added. To be added.

  Gets or sets a value that indicates whether the service configured with the binding uses streamed or buffered (or both) modes of message transfer.