Compartir a través de


Cómo: Enviar mensajes complejos

Actualización: noviembre 2007

Además de enviar un mensaje simple especificándolo en el argumento del método Send, puede lograr un control mayor de los mensajes si crea explícitamente un objeto Message, en lugar de permitir que el método Send cree y envíe uno automáticamente. Mediante la manipulación de las propiedades del objeto Message resultante, puede crear mensajes más complejos y ejercer un control mayor sobre la forma de procesar los mensajes.

Cuando envíe un mensaje complejo, deberá crear en primer lugar una conexión a la cola con la que desee comunicarse y, a continuación, especificar los datos que se van a enviar. No obstante, como parte de la especificación de los datos que se envían, deberá crear una instancia de la clase Message, establecer las propiedades necesarias y ajustar con precisión los mecanismos de entrega antes de enviar el mensaje. Como ocurre con los mensajes simples, el sistema guardará el objeto de mensaje y lo enviará a la cola especificada.

Nota:

El objeto Message también permite enviar mensajes como parte de una transacción. Para obtener más información, vea Procesamiento transaccional de mensajes.

Para enviar un mensaje complejo mediante la clase Message

  1. Cree una instancia del componente MessageQueue y establezca su propiedad Path en la cola a la que se desea hacer referencia. Para obtener más información, vea Cómo: Crear instancias de componentes MessageQueue.

    Nota:

    Si ha creado el componente desde el Explorador de servidores, la propiedad Path se establecerá automáticamente en la ruta de acceso a dicha cola.

  2. Cree una instancia del objeto Message.

  3. Establezca el texto del mensaje y especifique las propiedades para las que desee valores diferentes de los predeterminados.

  4. Utilice el método Send para enviar el objeto a la cola.

    Cuando finalice el procedimiento, el código puede tener esta apariencia:

    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);
    

Vea también

Tareas

Cómo: Crear instancias de componentes MessageQueue

Cómo: Enviar mensajes simples

Cómo: Comprobar mensajes en tiempo de diseño

Conceptos

Procesamiento transaccional de mensajes

Otros recursos

Enviar y serializar mensajes