Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 12.0.1 (Deutsch) » QAnywhere » Schreiben von QAnywhere-Clientanwendungen » QAnywhere-Nachrichten senden » Implementierung von transaktionalem Messaging

 

Transaktionales Messaging für .NET-Clients implementieren

 Erstellen eines Transaktionsmanagers
  1. Initialisieren Sie QAnywhere.

    Dieser Schritt ist derselbe wie beim nicht-transaktionalen Messaging.

    using iAnywhere.QAnywhere.Client;
  2. Erstellen Sie ein QATransactionalManager-Objekt.

    Beispiel: Um ein Standard-QATransactionalManager-Objekt zu erstellen, rufen Sie CreateQATransactionalManager auf:

    QATransactionalManager mgr = fact.CreateQATransactionalManager();  // no argument

    Als Alternative können Sie ein QATransactionalManager-Objekt erstellen, das unter Verwendung einer Eigenschaftsdatei angepasst wird. Die Eigenschaftsdatei wird in der CreateQATransactionalManager-Methode angegeben:

    QAManagerFactory fact = QAManagerFactory.Instance( "qa_mgr.props" );

    Dabei gilt: qa_mgr.props ist der Name der Eigenschaftsdatei auf dem entfernten Gerät.

  3. Initialisieren Sie das QAManager-Objekt.

    mgr.Open();

Sie sind nun bereit, Nachrichten zu versenden. Die folgende Prozedur versendet zwei Nachrichten in einer einzigen Transaktion.

 Senden mehrerer Nachrichten in einer einzigen Transaktion
  1. Initialisieren Sie Nachrichtenobjekte.

    QATextMessage msg_1;
    QATextMessage msg_2;
  2. Versenden Sie die Nachrichten.

    Der folgende Code versendet zwei Nachrichten in einer einzigen Transaktion:

         msg_1 = mgr.CreateTextMessage();
         msg_2 = mgr.CreateTextMessage();
         mgr.PutMessage( "jms_1\\queue_name", msg_1 );
         mgr.PutMessage( "jms_1\\queue_name", msg_2 );
         mgr.Commit();

    Die Commit-Methode schreibt die aktuelle Transaktion fest und beginnt eine neue Transaktion. Diese Methode schreibt alle Aufrufe von PutMessage()- und GetMessage()-Methoden fest.

    Hinweis

    Die erste Transaktion beginnt mit dem Aufruf der open-Methode.

 Siehe auch