Поделиться через


Практическое руководство. Отправка сложных сообщений

Обновлен: Ноябрь 2007

В дополнение к отправке простого сообщения путем указания сообщения в качестве аргумента метода Send, можно получить больший контроль над сообщениями, явно создав объект Message, вместо того чтобы позволить общему методу Send создавать и посылать их. Изменяя свойства итогового объекта Message, можно создавать более сложные сообщения и лучше контролировать обработку сообщений.

При отправке сложного сообщения сначала необходимо установить соединение с нужной очередью, а затем указать данные для отправки. Однако процесс определения данных для отправки подразумевает, что перед отправкой сообщения будет создан экземпляр класса Message, заданы нужные свойства и настроены механизмы доставки. Как и в случае с простыми сообщениями, система сохраняет объект сообщения и отправляет его в указанную очередь.

33h94ddt.alert_note(ru-ru,VS.90).gifПримечание.

При помощи объекта Message сообщение можно отправить как часть транзакции. Дополнительные сведения см. в разделе Транзакционная обработка сообщений.

Отправка сложного сообщения с помощью класса Message

  1. Создайте экземпляр компонента MessageQueue и задайте в качестве значения свойства Path очередь, на которую необходимо сослаться. Дополнительные сведения см. в разделе Практическое руководство. Создание экземпляров компонента MessageQueue.

    33h94ddt.alert_note(ru-ru,VS.90).gifПримечание.

    Если компонент создан в обозревателе серверов, свойство Path автоматически настраивается на нужную очередь.

  2. Создайте экземпляр объекта Message.

  3. Введите текст сообщения и задайте любые свойства, для которых необходимо изменить значения по умолчанию.

  4. Используйте метод Send для отправки объекта в очередь.

    По завершении код будет выглядеть примерно следующим образом:

    Dim MessageQueue1 As New System.Messaging.MessageQueue(".\YourQueue")
    Dim newMessage As New System.Messaging.Message("Hello again")
    newMessage.Label = "This is the label."
    MessageQueue1.Send(newMessage)
    
         System.Messaging.MessageQueue myMQ1 =
               new System.Messaging.MessageQueue(@".\YourQueue");
            System.Messaging.Message newMessage =
               new System.Messaging.Message("Hello again");
            newMessage.Label = "This is the label";
            myMQ1.Send(newMessage);
    

См. также

Задачи

Практическое руководство. Создание экземпляров компонента MessageQueue

Практическое руководство. Отправка простых сообщений

Практическое руководство. Проверка сообщений во время разработки

Основные понятия

Транзакционная обработка сообщений

Другие ресурсы

Отправка и сериализация сообщений