Aracılığıyla paylaş


<wsDualHttpBinding>

Çift yönlü hizmet sözleşmeleri veya SOAP aracıları aracılığıyla iletişim için uygun, güvenli, güvenilir ve birlikte çalışabilir bir bağlama tanımlar.

<configuration>
  <system.serviceModel>
    <bindings>
      <wsDualHttpBinding>

Sözdizimi

<wsDualHttpBinding>
  <binding name="String"
          closeTimeout="TimeSpan"
          openTimeout="TimeSpan"
          receiveTimeout="TimeSpan"
          sendTimeout="TimeSpan"
          bypassProxyOnLocal="Boolean"
          clientBaseAddress="URI"
          transactionFlow="Boolean"
          hostNameComparisonMode="StrongWildCard/Exact/WeakWildcard"
          maxBufferPoolSize="integer"
          maxReceivedMessageSize="Integer"
          messageEncoding="Text/Mtom"
          proxyAddress="URI"
          textEncoding="Unicode/BigEndianUnicode/UTF8"
          useDefaultWebProxy="Boolean">
    <reliableSession ordered="Boolean"
                     inactivityTimeout="TimeSpan" />
    <security mode="None/Message">
      <message clientCredentialType="None/Windows/UserName/Certificate/CardSpace"
               negotiateServiceCredential="Boolean"
               algorithmSuite="Basic128/Basic192/Basic256/Basic128Rsa15/Basic256Rsa15/TripleDes/TripleDesRsa15/Basic128Sha256/Basic192Sha256/TripleDesSha256/Basic128Sha256Rsa15/Basic192Sha256Rsa15/Basic256Sha256Rsa15/TripleDesSha256Rsa15" />
    </security>
    <readerQuotas maxArrayLength="Integer"
                  maxBytesPerRead="Integer"
                  maxDepth="Integer"
                  maxNameTableCharCount="Integer"
                  maxStringContentLength="Integer" />
  </binding>
</wsDualHttpBinding>

Öznitelikler ve Öğeler

Aşağıdaki bölümlerde öznitelikler, alt öğeler ve üst öğeler açıklanmaktadır

Attributes

Özellik Description
Bypassproxyonlocal Yerel adresler için ara sunucunun atlanıp atlanmayacağını gösteren boole değeri. Varsayılan değer: false.
clientBaseAddress İstemcinin hizmetten gelen yanıt iletileri için dinlediğini temel adresi ayarlayan bir URI. Belirtilirse, dinlemek için bu adres (artı kanal başınaGUID) kullanılır. Değer belirtilmezse, istemci temel adresi aktarıma özgü bir şekilde oluşturulur. Varsayılan değer: null.
closeTimeout Kapatma TimeSpan işleminin tamamlanması için sağlanan zaman aralığını belirten değer. Bu değer değerinden büyük veya buna Zeroeşit olmalıdır. Varsayılan değer 00:01:00'dır.
hostnameComparisonMode URI'leri ayrıştırmak için kullanılan HTTP ana bilgisayar adı karşılaştırma modunu belirtir. Bu öznitelik, URI'de eşleştirilirken ana bilgisayar adının hizmete ulaşmak için kullanılıp kullanılmadığını gösteren türündedir HostNameComparisonMode. Varsayılan değer, eşleşmedeki konak adını yoksayan değeridir StrongWildcard.
maxBufferPoolSize Bu bağlama için en büyük arabellek havuzu boyutunu belirten bir tamsayı. Varsayılan değer 524.288 bayttır (512 * 1024). Windows Communication Foundation'ın (WCF) birçok bölümünde arabellekler kullanılır. Arabellekleri her kullanışında oluşturmak ve yok etmek pahalıdır ve arabellekler için atık toplama da pahalıdır. Arabellek havuzları ile havuzdan bir arabellek alabilir, kullanabilir ve işiniz bittiğinde havuza döndürebilirsiniz. Bu nedenle arabellek oluşturma ve yok etme ek yükünden kaçınılır.
maxReceivedMessageSize Bu bağlamayla yapılandırılmış bir kanalda alınabilecek üst bilgiler de dahil olmak üzere bayt cinsinden en büyük ileti boyutunu belirten pozitif bir tamsayı. Bu sınırı aşan bir iletinin göndereni SOAP hatası alır. Alıcı, iletiyi bırakır ve izleme günlüğünde olayın bir girdisini oluşturur. Varsayılan değer 65536'dır.
messageEncoding İletiyi kodlamak için kullanılan kodlayıcıyı tanımlar. Geçerli değerler şunlardır:

- Metin: Metin iletisi kodlayıcı kullanın.
- Mtom: İleti İletim Kuruluş Mekanizması 1.0 (MTOM) kodlayıcı kullanın.
- Varsayılan değer Metin'dir.

Bu öznitelik türündedir WSMessageEncoding.
name Bağlamanın yapılandırma adını içeren bir dize. Bağlama için tanımlama olarak kullanıldığından bu değer benzersiz olmalıdır. .NET Framework 4'den başlayarak, bağlamaların ve davranışların bir ada sahip olması gerekmez. Varsayılan yapılandırma ve adsız bağlamalar ve davranışlar hakkında daha fazla bilgi için bkz. WCF Hizmetleri içinBasitleştirilmiş Yapılandırma ve Basitleştirilmiş Yapılandırma.
openTimeout Açık TimeSpan işlemin tamamlanması için sağlanan zaman aralığını belirten değer. Bu değer değerinden büyük veya buna Zeroeşit olmalıdır. Varsayılan değer 00:01:00'dır.
proxyAddress HTTP ara sunucusunun adresini belirten bir URI. ise useDefaultWebProxytrue, bu ayar olmalıdır null. Varsayılan değer: null.
receiveTimeout Alma TimeSpan işleminin tamamlanması için sağlanan zaman aralığını belirten değer. Bu değer değerinden büyük veya buna Zeroeşit olmalıdır. Varsayılan değer 00:01:00'dır.
sendTimeout TimeSpan Gönderme işleminin tamamlanması için sağlanan zaman aralığını belirten değer. Bu değer değerinden büyük veya buna Zeroeşit olmalıdır. Varsayılan değer 00:01:00'dır.
textEncoding Bağlamada iletileri yaymak için kullanılacak karakter kümesi kodlamasını ayarlar. Geçerli değerler şunlardır:

- BigEndianUnicode: Unicode BigEndian kodlaması.
- Unicode: 16 bit kodlama.
- UTF8: 8 bit kodlama

Varsayılan değer UTF8'dir. Bu öznitelik türündedir Encoding.
transactionFlow Bağlamanın akış WS-Transactions'ı destekleyip desteklemediğini belirten boole değeri. Varsayılan değer: false.
useDefaultWebProxy Sistemin otomatik olarak yapılandırılan HTTP proxy'sinin kullanılıp kullanılmadığını gösteren Boole değeri. Bu öznitelik nullise proxy adresi olmalıdır (yani ayarlanmamalıdır true ). Varsayılan değer: true.

Alt Öğeler

Öğe Description
<güvenlik> Bağlama için güvenlik ayarlarını tanımlar. Bu öğe türündedir WSDualHttpSecurityElement.
<readerQuotas> Bu bağlamayla yapılandırılan uç noktalar tarafından işlenebilen SOAP iletilerinin karmaşıklığıyla ilgili kısıtlamaları tanımlar. Bu öğe türündedir XmlDictionaryReaderQuotasElement.
<Reliablesession> Kanal uç noktaları arasında güvenilir oturumların kurulup kurulmadığını belirtir.

Üst Öğeler

Öğe Description
<Bağlama> Bu öğe, standart ve özel bağlamalardan oluşan bir koleksiyonu barındırıyor.

Açıklamalar

, WSDualHttpBinding web hizmeti protokolleri WSHttpBindingiçin ile aynı desteği sağlar, ancak çift yönlü anlaşmalarla birlikte kullanılır. WSDualHttpBinding yalnızca SOAP güvenliğini destekler ve güvenilir mesajlaşma gerektirir. Bu bağlama, istemcinin hizmet için bir geri çağırma uç noktası sağlayan bir genel URI'ye sahip olmasını gerektirir. Bu, özniteliği tarafından clientBaseAddress sağlanır. İkili bağlama, istemcinin IP adresini hizmete sunar. İstemci, yalnızca güvendiği hizmetlere bağlandığından emin olmak için güvenliği kullanmalıdır.

Bu bağlama, bir veya daha fazla SOAP aracı aracılığıyla güvenilir bir şekilde iletişim kurmak için kullanılabilir.

Varsayılan olarak, bu bağlama güvenilirlik için WS-ReliableMessaging, ileti güvenliği ve kimlik doğrulaması için WS-Security, ileti teslimi için HTTP ve Metin/XML ileti kodlaması içeren bir çalışma zamanı yığını oluşturur.

Example

<configuration>
  <system.ServiceModel>
    <bindings>
      <wsDualHttpBinding>
        <binding closeTimeout="00:00:10"
                 openTimeout="00:00:20"
                 receiveTimeout="00:00:30"
                 sendTimeout="00:00:40"
                 bypassProxyOnLocal="false"
                 clientBaseAddress="http://localhost:8001/client/"
                 transactionFlow="true"
                 hostNameComparisonMode="WeakWildcard"
                 maxReceivedMessageSize="1000"
                 messageEncoding="Mtom"
                 proxyAddress="http://foo/bar"
                 textEncoding="utf-16"
                 useDefaultWebProxy="false">
          <reliableSession ordered="false"
                           inactivityTimeout="00:02:00" />
          <security mode="None">
            <message clientCredentialType="None"
                     negotiateServiceCredential="false"
                     algorithmSuite="Aes128" />
          </security>
        </binding>
      </wsDualHttpBinding>
    </bindings>
  </system.ServiceModel>
</configuration>

Ayrıca bakınız