(0) exportieren Drucken
Alle erweitern

OnMessageOptions-Klasse

Stellt Optionen zur Verfügung, die der Nachrichtensystemverarbeitung mithilfe von OnMessage(Action<(Of <<'(BrokeredMessage>)>>)) und OnMessage(Action<(Of <<'(BrokeredMessage>)>>)) zugeordnet sind.

System..::..Object
  Microsoft.ServiceBus.Messaging..::..OnMessageOptions

Namespace:  Microsoft.ServiceBus.Messaging
Assembly:  Microsoft.ServiceBus (in Microsoft.ServiceBus.dll)

public sealed class OnMessageOptions

Der OnMessageOptions-Typ macht folgende Elemente verfügbar.

  NameBeschreibung
Öffentliche MethodeOnMessageOptionsInitialisiert eine neue Instanz der OnMessageOptions-Klasse.
Zum Anfang

  NameBeschreibung
Öffentliche EigenschaftAutoCompleteRuft einen Wert ab, der angibt, ob das Nachrichtensystem Complete(Guid) oder Complete(Guid) für Nachrichten aufrufen soll, nachdem die Verarbeitung des Rückrufs abgeschlossen wurde, oder legt diesen Wert fest.
Öffentliche EigenschaftMaxConcurrentCallsRuft die maximale Anzahl gleichzeitiger Aufrufe des Rückrufs ab, die das Nachrichtensystem initiieren soll, oder legt diese Anzahl fest.
Zum Anfang

  NameBeschreibung
Öffentliche MethodeEquals (Geerbt von Object.)
Öffentliche MethodeGetHashCode (Geerbt von Object.)
Öffentliche MethodeGetType (Geerbt von Object.)
Öffentliche MethodeToString (Geerbt von Object.)
Zum Anfang

  NameBeschreibung
Öffentliches EreignisExceptionReceivedTritt auf, wenn die Ausnahme empfangen wird. Ermöglicht die Benachrichtigung des Benutzers zu allen Fehlern, die ggf. für das Nachrichtensystem aufgetreten sind.
Zum Anfang

When calling OnMessage()()()(), the client starts an internal message pump that constantly polls the queue or subscription. This message pump consists of an infinite loop that issues a Receive() call. If the call times out, it issues the next Receive() call. The timeout is the value of the OperationTimeout property of the MessagingFactory that is used. The default value of this timeout is 60 seconds. You can modify the timeout by changing the OperationTimeout property before creating the MessagingFactory. Note that every receive operation is a billable event.

void ReceiveMessages()
{
    // Initialize message pump options.
    OnMessageOptions options = new OnMessageOptions();
    options.AutoComplete = true; // Indicates if the message-pump should call complete on messages after the callback has completed processing.
    options.MaxConcurrentCalls = 1; // Indicates the maximum number of concurrent calls to the callback the pump should initiate.
    options.ExceptionReceived += LogErrors; // Enables you to get notified of any errors encountered by the message pump.

    // Start receiving messages.
    QueueClient client = QueueClient.Create("myQueue");
    client.OnMessage((receivedMessage) => // Initiates the message pump and callback is invoked for each message that is recieved, calling close on the client will stop the pump.
    {
        // Process the message.
    }, options);

    Console.WriteLine("Press any key to exit.");
    Console.ReadKey();
}

        void LogErrors(object sender, ExceptionReceivedEventArgs e)
        {
            if (e.Exception != null)
            {
                Console.WriteLine("Error: " + e.Exception.Message);
                Client.Close();
            }
        }

Alle öffentlichen static (Shared in Visual Basic)-Elemente dieses Typs sind Threadsicher. Für Instanzelemente wird die Threadsicherheit nicht gewährleistet.

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2014 Microsoft