Jo Shields a575963da9 Imported Upstream version 3.6.0
Former-commit-id: da6be194a6b1221998fc28233f2503bd61dd9d14
2014-08-13 10:39:27 +01:00

468 lines
25 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<Type Name="WSDualHttpBinding" FullName="System.ServiceModel.WSDualHttpBinding">
<TypeSignature Language="C#" Value="public class WSDualHttpBinding : System.ServiceModel.Channels.Binding, System.ServiceModel.Channels.IBindingRuntimePreferences" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi beforefieldinit WSDualHttpBinding extends System.ServiceModel.Channels.Binding implements class System.ServiceModel.Channels.IBindingRuntimePreferences" />
<AssemblyInfo>
<AssemblyName>System.ServiceModel</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.ServiceModel.Channels.Binding</BaseTypeName>
</Base>
<Interfaces>
<Interface>
<InterfaceName>System.ServiceModel.Channels.IBindingRuntimePreferences</InterfaceName>
</Interface>
</Interfaces>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="T:System.ServiceModel.WSDualHttpBinding" /> provides the same support for Web Service protocols as the <see cref="T:System.ServiceModel.WSHttpBinding" />, but for use with duplex contracts. <see cref="T:System.ServiceModel.WSDualHttpBinding" /> only supports SOAP security and requires reliable messaging. This binding requires that the client has a public URI that provides a callback endpoint for the service. This is provided by the <see cref="P:System.ServiceModel.Channels.CompositeDuplexBindingElement.ClientBaseAddress" />. A dual binding exposes the IP address of the client to the service. The client should use security to ensure that it only connects to services it trusts.</para>
<para>By default the <see cref="T:System.ServiceModel.WSDualHttpBinding" /> generates the following binding element stack:</para>
<list type="bullet">
<item>
<para>
<see cref="T:System.ServiceModel.Channels.TransactionFlowBindingElement" />
</para>
</item>
<item>
<para>
<see cref="T:System.ServiceModel.Channels.ReliableSessionBindingElement" />
</para>
</item>
<item>
<para>
<see cref="T:System.ServiceModel.Channels.SymmetricSecurityBindingElement" />
</para>
</item>
<item>
<para>
<see cref="T:System.ServiceModel.Channels.CompositeDuplexBindingElement" />
</para>
</item>
<item>
<para>
<see cref="T:System.ServiceModel.Channels.OneWayBindingElement" />
</para>
</item>
<item>
<para>
<see cref="T:System.ServiceModel.Channels.TextMessageEncodingBindingElement" />
</para>
</item>
<item>
<para>
<see cref="T:System.ServiceModel.Channels.HttpTransportBindingElement" />
</para>
</item>
</list>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>A secure and interoperable binding that is designed for use with duplex service contracts that allows both services and clients to send and receive messages.</para>
</summary>
</Docs>
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public WSDualHttpBinding ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor() cil managed" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters />
<Docs>
<remarks>To be added.</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Initializes a new instance of the <see cref="T:System.ServiceModel.WSDualHttpBinding" /> class. </para>
</summary>
</Docs>
</Member>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="protected WSDualHttpBinding (System.ServiceModel.WSDualHttpSecurityMode securityMode);" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig specialname rtspecialname instance void .ctor(valuetype System.ServiceModel.WSDualHttpSecurityMode securityMode) cil managed" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters>
<Parameter Name="securityMode" Type="System.ServiceModel.WSDualHttpSecurityMode" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Reliable messaging is required by the <see cref="T:System.ServiceModel.WSDualHttpBinding" />, so there is no constructor that provides a switch to turn it off as there is on the <see cref="M:System.ServiceModel.WSHttpBinding.#ctor(System.ServiceModel.SecurityMode)" /> constructor for the <see cref="T:System.ServiceModel.WSHttpBinding" />.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Initializes a new instance of the <see cref="T:System.ServiceModel.WSDualHttpBinding" /> class with a specified type of security used by the binding.</para>
</summary>
<param name="securityMode">
<attribution license="cc4" from="Microsoft" modified="false" />The value of <see cref="T:System.ServiceModel.WSDualHttpSecurityMode" /> that specifies the type of security that is used with the SOAP message and for the client.</param>
</Docs>
</Member>
<Member MemberName="BypassProxyOnLocal">
<MemberSignature Language="C#" Value="public bool BypassProxyOnLocal { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance bool BypassProxyOnLocal" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Docs>
<value>To be added.</value>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>An Internet resource is local if it has a local address. A local address is one that is on the same computer, the local LAN or intranet and is identified, syntactically, by the lack of a period (.) as in the URIs "http://webserver/" and "http://localhost/".</para>
<para>Setting the <see cref="P:System.ServiceModel.WSDualHttpBinding.BypassProxyOnLocal" /> property determines whether endpoints configured with the <see cref="T:System.ServiceModel.WSDualHttpBinding" /> use the proxy server when accessing local resources.</para>
<para>If <see cref="P:System.ServiceModel.WSDualHttpBinding.BypassProxyOnLocal" /> is true, requests to local Internet resources do not use the proxy server. Use the host name (rather than localhost) if you want clients to go through a proxy when talking to services on the same machine when this property is set to true.</para>
<para>When <see cref="P:System.ServiceModel.WSDualHttpBinding.BypassProxyOnLocal" /> is false, all Internet requests are made through the proxy server.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Gets or sets a value that indicates whether to bypass the proxy server for local addresses.</para>
</summary>
</Docs>
</Member>
<Member MemberName="ClientBaseAddress">
<MemberSignature Language="C#" Value="public Uri ClientBaseAddress { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.Uri ClientBaseAddress" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Uri</ReturnType>
</ReturnValue>
<Docs>
<value>To be added.</value>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>This public URI for the client provides the callback endpoint required for the service to contact the client when the contract is duplex.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Gets or sets the base address of the client.</para>
</summary>
</Docs>
</Member>
<Member MemberName="CreateBindingElements">
<MemberSignature Language="C#" Value="public override System.ServiceModel.Channels.BindingElementCollection CreateBindingElements ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig virtual instance class System.ServiceModel.Channels.BindingElementCollection CreateBindingElements() cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.ServiceModel.Channels.BindingElementCollection</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<remarks>To be added.</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Returns an ordered collection of binding elements contained in the current binding.</para>
</summary>
<returns>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>A <see cref="T:System.ServiceModel.Channels.BindingElementCollection" /> that includes a <see cref="T:System.ServiceModel.Channels.TransactionFlowBindingElement" /> and, because a reliable session is required for the <see cref="T:System.ServiceModel.WSDualHttpBinding" />, a <see cref="T:System.ServiceModel.Channels.ReliableSessionBindingElement" />.</para>
</returns>
</Docs>
</Member>
<Member MemberName="EnvelopeVersion">
<MemberSignature Language="C#" Value="public System.ServiceModel.EnvelopeVersion EnvelopeVersion { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.ServiceModel.EnvelopeVersion EnvelopeVersion" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.ServiceModel.EnvelopeVersion</ReturnType>
</ReturnValue>
<Docs>
<value>To be added.</value>
<remarks>To be added.</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Gets the version of SOAP that is used for messages that are processed by this binding.</para>
</summary>
</Docs>
</Member>
<Member MemberName="HostNameComparisonMode">
<MemberSignature Language="C#" Value="public System.ServiceModel.HostNameComparisonMode HostNameComparisonMode { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance valuetype System.ServiceModel.HostNameComparisonMode HostNameComparisonMode" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.ServiceModel.HostNameComparisonMode</ReturnType>
</ReturnValue>
<Docs>
<value>To be added.</value>
<remarks>To be added.</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Gets or sets a value that indicates whether the hostname is used to reach the service when matching the URI.</para>
</summary>
</Docs>
</Member>
<Member MemberName="MaxBufferPoolSize">
<MemberSignature Language="C#" Value="public long MaxBufferPoolSize { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance int64 MaxBufferPoolSize" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Int64</ReturnType>
</ReturnValue>
<Docs>
<value>To be added.</value>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="T:System.ServiceModel.Channels.BufferManager" /> minimizes the cost of using buffers with a buffer pool. Buffers are required to process messages by the service when they come out of the channel. If there is not sufficient memory in the buffer pool to process the message load, the <see cref="T:System.ServiceModel.Channels.BufferManager" /> must allocate additional memory from the CLR heap, which increases the garbage collection overhead. Extensive allocation from the CLR garbage heap is an indication that the buffer pool size is too small and that performance can be improved with a larger allocation by increasing the <see cref="P:System.ServiceModel.WSDualHttpBinding.MaxBufferPoolSize" /> limit.</para>
<para>The limitations on buffer size set here are for optimizing the performance of message exchanges. If a message exceeds the maximum value set for the buffer, it is not dropped. Instead, more memory is requested from the CLR heap and this incurs more garbage collection overhead than using the buffers.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Gets or sets the maximum amount of memory, in bytes, that can be allocated for the manager of message buffers that receive messages at the endpoints configured with this binding.</para>
</summary>
</Docs>
</Member>
<Member MemberName="MaxReceivedMessageSize">
<MemberSignature Language="C#" Value="public long MaxReceivedMessageSize { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance int64 MaxReceivedMessageSize" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Int64</ReturnType>
</ReturnValue>
<Docs>
<value>To be added.</value>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The size of the messages that can be received on the wire by services using the <see cref="T:System.ServiceModel.WSDualHttpBinding" /> is bounded by the amount of memory allocated for each message. This bound on message size is intended to limit exposure to DOS-style attacks. </para>
<para>Note that the settings for <see cref="P:System.ServiceModel.WSDualHttpBinding.MaxBufferPoolSize" /> and <see cref="P:System.ServiceModel.BasicHttpBinding.MaxReceivedMessageSize" /> are local behavioral settings. This means that they are not transmitted to other endpoints in metadata. If you generate a proxy to a service with a maximum message size of 2GB from metadata, the proxy still has a default value 64K. This leaves control of the appropriate bounds for message and message buffer size in the scope of local administrators.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Gets or sets the maximum size, in bytes, for a message that can be received on a channel configured with this binding.</para>
</summary>
</Docs>
</Member>
<Member MemberName="MessageEncoding">
<MemberSignature Language="C#" Value="public System.ServiceModel.WSMessageEncoding MessageEncoding { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance valuetype System.ServiceModel.WSMessageEncoding MessageEncoding" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.ServiceModel.WSMessageEncoding</ReturnType>
</ReturnValue>
<Docs>
<value>To be added.</value>
<remarks>To be added.</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Gets or sets whether MTOM or Text/XML is used to encode SOAP messages.</para>
</summary>
</Docs>
</Member>
<Member MemberName="ProxyAddress">
<MemberSignature Language="C#" Value="public Uri ProxyAddress { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.Uri ProxyAddress" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Uri</ReturnType>
</ReturnValue>
<Docs>
<value>To be added.</value>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>If the <see cref="P:System.ServiceModel.WSDualHttpBinding.UseDefaultWebProxy" /> is set to true, the value of the <see cref="P:System.ServiceModel.WSDualHttpBinding.ProxyAddress" /> is ignored.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Gets or sets the URI address of the HTTP proxy.</para>
</summary>
</Docs>
</Member>
<Member MemberName="ReaderQuotas">
<MemberSignature Language="C#" Value="public System.Xml.XmlDictionaryReaderQuotas ReaderQuotas { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.Xml.XmlDictionaryReaderQuotas ReaderQuotas" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Xml.XmlDictionaryReaderQuotas</ReturnType>
</ReturnValue>
<Docs>
<value>To be added.</value>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The complexity constraints include items such as a maximum element depth and a maximum length for string content within the message. The constraints protect against a class of denial of service (DOS) attacks that attempt to use message complexity to tie up endpoint processing resources. </para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Gets or sets constraints on the complexity of SOAP messages that can be processed by endpoints configured with this binding.</para>
</summary>
</Docs>
</Member>
<Member MemberName="ReliableSession">
<MemberSignature Language="C#" Value="public System.ServiceModel.ReliableSession ReliableSession { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.ServiceModel.ReliableSession ReliableSession" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.ServiceModel.ReliableSession</ReturnType>
</ReturnValue>
<Docs>
<value>To be added.</value>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The reliable session is required for service configured with a <see cref="T:System.ServiceModel.WSDualHttpBinding" />.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Gets an object that provides convenient access to the properties of a reliable session binding element that are available when using one of the system-provided bindings.</para>
</summary>
</Docs>
</Member>
<Member MemberName="Scheme">
<MemberSignature Language="C#" Value="public override string Scheme { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance string Scheme" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.String</ReturnType>
</ReturnValue>
<Docs>
<value>To be added.</value>
<remarks>To be added.</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Gets the URI transport scheme for the channels and listeners that are configured with this binding.</para>
</summary>
</Docs>
</Member>
<Member MemberName="Security">
<MemberSignature Language="C#" Value="public System.ServiceModel.WSDualHttpSecurity Security { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.ServiceModel.WSDualHttpSecurity Security" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.ServiceModel.WSDualHttpSecurity</ReturnType>
</ReturnValue>
<Docs>
<value>To be added.</value>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>A dual binding exposes the IP address of the client to the service. The client should use security to ensure that it only connects to services it trusts.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Gets an object that specifies the security settings used with this binding. </para>
</summary>
</Docs>
</Member>
<Member MemberName="System.ServiceModel.Channels.IBindingRuntimePreferences.ReceiveSynchronously">
<MemberSignature Language="C#" Value="bool System.ServiceModel.Channels.IBindingRuntimePreferences.ReceiveSynchronously { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance bool System.ServiceModel.Channels.IBindingRuntimePreferences.ReceiveSynchronously" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Docs>
<value>To be added.</value>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>This value can be changed by using a service model behavior.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Gets a value that indicates whether incoming requests are handled synchronously or asynchronously.</para>
</summary>
</Docs>
</Member>
<Member MemberName="TextEncoding">
<MemberSignature Language="C#" Value="public System.Text.Encoding TextEncoding { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.Text.Encoding TextEncoding" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Text.Encoding</ReturnType>
</ReturnValue>
<Docs>
<value>To be added.</value>
<remarks>To be added.</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Gets or sets the character encoding that is used for the message text.</para>
</summary>
</Docs>
</Member>
<Member MemberName="TransactionFlow">
<MemberSignature Language="C#" Value="public bool TransactionFlow { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance bool TransactionFlow" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Docs>
<value>To be added.</value>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The default value specifies that clients do not flow transactions and services reject messages with a flowed transaction message header.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Gets or sets a value that indicates whether this binding should support flowing WS-Transactions.</para>
</summary>
</Docs>
</Member>
<Member MemberName="UseDefaultWebProxy">
<MemberSignature Language="C#" Value="public bool UseDefaultWebProxy { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance bool UseDefaultWebProxy" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Docs>
<value>To be added.</value>
<remarks>To be added.</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Gets or sets a value that indicates whether the auto-configured HTTP proxy of the system should be used, if available.</para>
</summary>
</Docs>
</Member>
</Members>
</Type>