<netMsmqBinding><netMsmqBinding>

Definiert eine Bindung in der Warteschlange, die für eine computerübergreifende Kommunikation geeignet ist.Defines a queued binding suitable for cross-machine communication.

<system.ServiceModel><system.ServiceModel>
<bindings><bindings>
<netMsmqBinding><netMsmqBinding>

SyntaxSyntax

<netMsmqBinding>  
    <binding   
       closeTimeout="TimeSpan"   
       customDeadLetterQueue="Uri"  
       deadLetterQueue="Uri"  
       durable="Boolean"  
       exactlyOnce="Boolean"   
       maxBufferPoolSize="Integer"  
       maxReceivedMessageSize"Integer"  
       maxRetryCycles="Integer"   
       name="string"   
       openTimeout="TimeSpan"   
       poisonMessageHandling="Disabled/EnabledIfSupported"   
       queueTransferProtocol="Native/Srmp/SrmpSecure"  
       receiveErrorHandling="Drop/Fault/Move/Reject"  
       receiveTimeout="TimeSpan"   
       receiveRetryCount="Integer"  
       rejectAfterLastRetry="Boolean"   
       retryCycleDelay="TimeSpan"    
       sendTimeout="TimeSpan"   
       timeToLive="TimeSpan"    
       useActiveDirectory="Boolean"  
       useMsmqTracing="Boolean  
       useSourceJournal="Boolean"  
          <security>  
                  <message    
                        algorithmSuite="Basic128/Basic192/Basic256/Basic128Rsa15/Basic256Rsa15/TripleDes/TripleDesRsa15/Basic128Sha256/Basic192Sha256/TripleDesSha256/Basic128Sha256Rsa15/Basic192Sha256Rsa15/Basic256Sha256Rsa15/TripleDesSha256Rsa15"  
            clientCredentialType="None/Windows/UserName/Certificate/InfoCard "/>  
                  <transport msmqAuthenticationMode="None/WindowsDomain/Certificate"  
            msmqEncryptionAlgorithm="RC4Stream/AES"  
            msmqProtectionLevel="None/Sign/EncryptAndSign"  
            msmqSecureHashAlgorithm="MD5/SHA1/SHA256/SHA512" />  
          </security>  
       <readerQuotas             maxArrayLength="Integer"            maxBytesPerRead="Integer"            maxDepth="Integer"             maxNameTableCharCount="Integer"                     maxStringContentLength="Integer" />   </binding></netMsmqBinding>  

Attribute und ElementeAttributes and Elements

In den folgenden Abschnitten werden Attribute sowie untergeordnete und übergeordnete Elemente beschrieben.The following sections describe attributes, child elements, and parent elements.

AttributeAttributes

AttributAttribute BeschreibungDescription
closeTimeout Ein TimeSpan-Wert, der das Zeitintervall für den Abschluss eines Schließvorgangs angibt.A TimeSpan value that specifies the interval of time provided for a close operation to complete. Dieser Wert muss größer oder gleich Zero sein.This value should be greater than or equal to Zero. Der Standardwert ist 00:01:00.The default is 00:01:00.
customDeadLetterQueue Ein URI, der den Speicherort der Warteschlange für unzustellbare Nachrichten für jede Anwendung enthält, in der abgelaufene oder nicht übertragene oder nicht zugestellte Nachrichten platziert werden.A URI that contains the location of the per-application dead letter queue, where messages that have expired or that have failed transfer or delivery are placed.

Die Warteschlange für unzustellbare Nachrichten ist eine Warteschlange für abgelaufene Nachrichten, die nicht zugestellt werden konnten. Diese Warteschlange befindet sich im Warteschlangen-Manager der sendenden Anwendung.The dead letter queue is a queue on the queue manager of the sending application for expired messages that have failed to be delivered.

Der URI, der von CustomDeadLetterQueue angegeben wird, muss das net.msmq-Schema verwenden.The URI that is specified by CustomDeadLetterQueue must use the net.msmq scheme.
deadLetterQueue Ein DeadLetterQueue-Wert, der den ggf. zu verwendenden Typ der Warteschlange für unzustellbare Nachrichten angibt.A DeadLetterQueue value specifying which type of dead-letter queue to use, if any.

Die Warteschlange für unzustellbare Nachrichten ist eine Warteschlange für Nachrichten, die nicht zugestellt werden konnten.A dead-letter queue is the place where messages that have failed to be delivered to the application will be transferred.

Bei Nachrichten, die exactlyOnce-Zusicherung erfordern (das heißt, das exactlyOnce-Attribut ist auf true gesetzt), ist dieses Attribut standardmäßig die systemweite Transaktionswarteschlange für unzustellbare Nachrichten in MSMQ.For messages that require exactlyOnce assurance (that is, the exactlyOnce attribute is set to true), this attribute defaults to the system-wide transactional dead-letter queue in MSMQ.

Für Nachrichten, die keine Zusicherung erfordern, ist dieses Attribut standardmäßig null.For messages that require no assurances, this attribute defaults to null.
durable Ruft einen booleschen Wert ab, der angibt, ob die Nachricht in der Warteschlange dauerhaft oder flüchtig ist.A Boolean value that indicates whether the message is durable or volatile in the queue. Eine permanente Meldung überlebt einen Warteschlangen-Managerabsturz, was für eine flüchtige Meldung nicht gilt.A durable message survives a queue manager crash, while a volatile message does not. Flüchtige Nachrichten sind nützlich, wenn Anwendungen eine geringere Latenz erfordern und eine geringe Anzahl verlorener Nachrichten tolerieren können.Volatile messages are useful when applications require lower latency and can tolerate occasional lost messages. Wenn für das exactlyOnce-Attribut true festgelegt wird, müssen die Nachrichten dauerhaft sein.If the exactlyOnce attribute is set to true, the messages must be durable. Die Standardeinstellung ist true.The default is true.
exactlyOnce Ein boolescher Wert, der angibt, ob die von dieser Bindung verarbeiteten einzelnen Nachrichten genau einmal empfangen werden.A Boolean value that indicates whether each message processed by this binding is delivered only once. Der Absender wird dann über den Zustellfehler benachrichtigt.The sender will then be notified of delivery failures. Wenn der durable-Wert false ist, wird dieses Attribut ignoriert, und es werden Nachrichten ohne Zustellungszusicherung übertragen.When durable is false, this attribute is ignored and messages are transferred without delivery assurance. Die Standardeinstellung ist true.The default is true. Weitere Informationen finden Sie unter ExactlyOnce.For more information, see ExactlyOnce.
maxBufferPoolSize Eine ganze Zahl, die die maximale Pufferpoolgröße für diese Bindung angibt.An integer that specifies the maximum buffer pool size for this binding. Der Standard ist 8.The default is 8.
maxReceivedMessageSize Eine positive ganze Zahl, die die maximale Nachrichtengröße in Byte einschließlich Header angibt, die von dieser Bindung verarbeitet wird.A positive integer that defines the maximum message size, in bytes, including headers, that is processed by this binding. Der Absender einer Nachricht, die diese Grenze überschreitet, erhält einen SOAP-Fehler.The sender of a message exceeding this limit will receive a SOAP fault. Der Empfänger verwirft die Nachricht und erstellt einen Eintrag des Ereignisses im Ablaufverfolgungsprotokoll.The receiver drops the message and creates an entry of the event in the trace log. Der Standard ist 65536.The default is 65536. Auf diese Weise sollen Denial-of-Service-Angriffe (DoS) reduziert werden.This bound on message size is intended to limit exposure to Denial of Service (DoS) attacks.
maxRetryCycles Eine ganze Zahl, die die Anzahl der Wiederholungszyklen für die Funktion zur Erkennung nicht verarbeitbarer Nachrichten angibt.An integer that indicates the number of retry cycles used by the poison-message detection feature. Eine Nachricht gilt als nicht verarbeitbare Nachricht, wenn alle erneuten Zustellversuche fehlgeschlagen sind.A message becomes a poison message when it fails all delivery attempts of all cycles. Der Standard ist 3.The default is 3. Weitere Informationen finden Sie unter MaxRetryCycles.For more information, see MaxRetryCycles.
name Erforderliches Attribut.Required attribute. Eine Zeichenfolge, die den Konfigurationsnamen der Bindung enthält.A string that contains the configuration name of the binding. Dieser Wert sollte eindeutig sein, da er von der Bindung zur Identifizierung verwendet wird.This value should be unique because it is used as an identification for the binding. Ab .NET Framework 4.NET Framework 4 müssen Bindungen und Verhalten keinen Namen aufweisen.Starting with .NET Framework 4.NET Framework 4, bindings and behaviors are not required to have a name. Weitere Informationen zur Standardkonfiguration und namenlos Bindungen und Verhaltensweisen finden Sie unter vereinfachte Konfiguration und vereinfachte Konfiguration für WCF-Dienste.For more information about default configuration and nameless bindings and behaviors, see Simplified Configuration and Simplified Configuration for WCF Services.
openTimeout Ein TimeSpan-Wert, der das Zeitintervall für den Abschluss eines Öffnungsvorgangs angibt.A TimeSpan value that specifies the interval of time provided for an open operation to complete. Dieser Wert muss größer oder gleich Zero sein.This value should be greater than or equal to Zero. Der Standardwert ist 00:01:00.The default is 00:01:00.
QueueTransferProtocol Ein gültiger QueueTransferProtocol-Wert, der den Wartenschlangentransport für den Kommunikationskanal angibt, der von dieser Bindung verwendet wird.A valid QueueTransferProtocol value that specifies the queued communication channel transport that this binding uses. MSMQ unterstützt keine Active Directory-Adressierung in Verbindung mit dem SOAP Reliable Messaging Protocol.MSMQ does not support Active Directory addressing when using SOAP Reliable Messaging Protocol. Aus diesem Grund sollten Sie dieses Attribut nicht festgelegt, um Srmp oder Srmps bei der u``seActiveDirectory -Attributsatz zur true.Therefore, you should not set this attribute to Srmp or Srmps when the u``seActiveDirectory attribute is set to true.
receiveErrorHandling Ein ReceiveErrorHandling-Wert, der angibt, wie nicht verarbeitbare und nicht zustellbare Nachrichten behandelt werden.A ReceiveErrorHandling value that specifies how poison and nondispatchable messages are handled.
receiveRetryCount Eine ganze Zahl, die die maximalen Versuche angibt, die dem Warteschlangen-Manager zum Senden einer Nachricht zur Verfügung stehen, bevor diese in die Wiederholungswarteschlange übertragen wird.An integer that specifies the maximum number of times the queue manager should attempt to send a message before transferring it to the retry queue.
receiveTimeout Ein TimeSpan-Wert, der das Zeitintervall für den Abschluss eines Empfangsvorgangs angibt.A TimeSpan value that specifies the interval of time provided for a receive operation to complete. Dieser Wert muss größer oder gleich Zero sein.This value should be greater than or equal to Zero. Der Standardwert ist 00:10:00.The default is 00:10:00.
retryCycleDelay Ein TimeSpan-Wert, der die Zeitverzögerung zwischen den Wiederholungszyklen angibt, wenn versucht wird, eine Nachricht zuzustellen, die nicht sofort zugestellt werden konnte.A TimeSpan value that specifies the time delay between retry cycles when attempting to deliver a message that could not be delivered immediately. Der Wert definiert nur die Mindestwartezeit, da die tatsächliche Wartezeit länger sein kann.The value defines only the minimum wait time because actual wait time can be longer. Der Standardwert ist 00:10:00.The default value is 00:10:00. Weitere Informationen finden Sie unter RetryCycleDelay.For more information, see RetryCycleDelay.
sendTimeout Ein TimeSpan-Wert, der das Zeitintervall für den Abschluss eines Sendevorgangs angibt.A TimeSpan value that specifies the interval of time provided for a send operation to complete. Dieser Wert muss größer oder gleich Zero sein.This value should be greater than or equal to Zero. Der Standardwert ist 00:01:00.The default is 00:01:00.
timeToLive Ein TimeSpan-Wert, der angibt, wie lange die Nachricht gültig ist, bis sie abläuft und in die Warteschlange für unzustellbare Nachrichten übertragen wird.A TimeSpan value that specifies how long the messages are valid before they are expired and put into the dead-letter queue. Der Standardwert ist 1.00:00:00.The default is 1.00:00:00.

Dieses Attribut wird festgelegt, um sicherzustellen, dass zeitkritische Nachrichten nicht veralten, bevor sie von den empfangenden Anwendungen verarbeitet werden.This attribute is set to ensure that time-sensitive messages do not become stale before they are processed by the receiving applications. Eine Nachricht in einer Warteschlange, die nicht von der empfangenden Anmeldung innerhalb des angegebenen Zeitintervalls verarbeitet wird, läuft ab.A message in a queue that is not consumed by the receiving application within the time interval specified is said to be expired. Abgelaufene Nachrichten werden an eine besondere Warteschlange gesendet: die Warteschlange für unzustellbare Nachrichten.Expired messages are sent to special queue called the dead letter queue. Der Speicherort der Warteschlange für unzustellbare Meldungen wird mithilfe des DeadLetterQueue-Attributs festgelegt. Andernfalls gilt die entsprechende, auf den Zusicherungen basierende Standardeinstellung.The location of the dead letter queue is set with the DeadLetterQueue attribute or to the appropriate default, based on assurances.
usingActiveDirectory Gibt einen booleschen Wert zurück, der angibt, ob Warteschlangenadressen mit Active Directory konvertiert werden sollen.A Boolean value that specifies if queue addresses should be converted using Active Directory.

MSMQ-Warteschlangenadressen können aus Pfadnamen oder aus direkten Formatnamen bestehen.MSMQ queue addresses can consist of path names or direct format names. Bei direkten Formatnamen wird der Computername von MSMQ mit DNS, NetBIOS oder IP aufgelöst.With a direct format name, MSMQ resolves the computer name using DNS, NetBIOS or IP. Bei Pfadnamen wird der Computername von MSMQ mit Active Directory aufgelöst.With a path name, MSMQ resolves the computer name using Active Directory.

Standardmäßig in Windows Communication Foundation (WCF) konvertiert der Transport der URI einer Nachrichtenwarteschlange in einen direkten Formatnamen der Warteschlange.By default, Windows Communication Foundation (WCF) queued transport converts the URI of a message queue to a direct format name. Durch Festlegen der UseActiveDirectory-Eigenschaft auf True kann von einer Anwendung angegeben werden, dass der Computername vom Warteschlangentransport mit Active Directory anstelle von DNS, NetBIOS oder IP aufgelöst werden soll.By setting the UseActiveDirectory property to true, an application can specify that the queued transport should resolve the computer name using Active Directory rather than DNS, NetBIOS, or IP.
useMsmqTracing Ein boolescher Wert, der angibt, ob von dieser Bindung verarbeitete Nachrichten verfolgt werden sollen.A Boolean value that specifies whether messages processed by this binding should be traced. Die Standardeinstellung ist false.The default is false. Wenn die Ablaufverfolgung aktiviert ist, werden Berichtsnachrichten erstellt und jedes Mal an die Berichtswarteschlange gesendet, wenn die Nachricht einen Computer mit Message Queuing erreicht oder verlässt.When tracing is enabled, report messages are created and sent to the report queue each time the message leaves or arrives at a Message Queuing computer.
useSourceJournal Ein boolescher Wert, der angibt, ob Kopien der von dieser Bindung verarbeiteten Nachrichten in der Quelljournalwarteschlange gespeichert werden sollen.A Boolean value that specifies copies of messages processed by this binding should be stored in the source journal. Die Standardeinstellung ist false.The default is false.

Anwendungen in Warteschlangen, die Nachrichten aufzeichnen möchten, die die Ausgangswarteschlange des Computers verlassen haben, können die Nachrichten in eine Journalwarteschlange kopieren.Queued applications that want to keep a record of messages that have left the computer's outgoing queue can copy the messages to a journal queue. Wenn eine Nachricht die Ausgangswarteschlange verlässt und eine Bestätigung empfangen wird, dass die Nachricht auf dem Zielcomputer empfangen wurde, wird eine Kopie der Nachricht in der Systemjournalwarteschlange des sendenden Computers beibehalten.Once a message leaves the outgoing queue and an acknowledgment is received that the message was received on the destination computer, a copy of the message is kept in the sending computer's system journal queue.

Untergeordnete ElementeChild Elements

ElementElement BeschreibungDescription
<readerQuotas><readerQuotas> Definiert die Beschränkungen der Komplexität von SOAP-Nachrichten, die von Endpunkten verarbeitet werden können, die mit dieser Bindung konfiguriert wurden.Defines the constraints on the complexity of SOAP messages that can be processed by endpoints configured with this binding. Dieses Element ist vom Typ XmlDictionaryReaderQuotasElement.This element is of type XmlDictionaryReaderQuotasElement.
<security><security> Definiert die Sicherheitseinstellungen für die Bindung.Defines the security settings for the binding. Dieses Element ist vom Typ NetMsmqSecurityElement.This element is of type NetMsmqSecurityElement.

Übergeordnete ElementeParent Elements

ElementElement BeschreibungDescription
<bindings><bindings> Dieses Element enthält eine Auflistung von standardmäßigen und benutzerdefinierten Bindungen.This element holds a collection of standard and custom bindings.

HinweiseRemarks

Die netMsmqBinding-Bindung stellt Unterstützung für Warteschlangen bereit, indem MSMQ (Microsoft Message Queuing) als Transport eingesetzt wird, und ermöglicht Unterstützung für lose miteinander verknüpfte Anwendungen, Fehlerisolierung, Lastenausgleich und Vorgänge im Offlinemodus.The netMsmqBinding binding provides support for queuing by leveraging Microsoft Message Queuing (MSMQ) as a transport and enables support for loosely coupled applications, failure isolation, load leveling and disconnected operations. Eine Erörterung dieser Features finden Sie unter Warteschlangen in WCF.For a discussion of these features, see Queues in WCF.

BeispielExample

<configuration>  
<system.ServiceModel>  
    <bindings>  
           <netMsmqBinding>  
                <binding   
                         closeTimeout="00:00:10"   
                         openTimeout="00:00:20"   
                         receiveTimeout="00:00:30"  
                         sendTimeout="00:00:40"  
                         deadLetterQueue="net.msmq://localhost/blah"   
                         durable="true"   
                         exactlyOnce="true"   
                         maxReceivedMessageSize="1000"  
                         maxRetries="11"  
                         maxRetryCycles="12"   
                         poisonMessageHandling="Disabled"   
                         rejectAfterLastRetry="false"   
                         retryCycleDelay="00:05:55"   
                         timeToLive="00:11:11"   
                         sourceJournal="true"  
                         useMsmqTracing="true"  
                         useActiveDirectory="true">  
                         <security>  
                             <message clientCredentialType="Windows" />  
                         </security>  
            </netMsmqBinding>  
    </bindings>  
</system.ServiceModel>  
</configuration>  

Siehe auchSee Also

NetMsmqBinding
NetMsmqBindingElement
<binding><binding>
BindungenBindings
Konfigurieren der vom System bereitgestellten BindungenConfiguring System-Provided Bindings
Verwenden von Bindungen, um Windows Communication Foundation-Dienste und Clients konfigurierenUsing Bindings to Configure Windows Communication Foundation Services and Clients
Warteschlangen in WCFQueues in WCF