Compartilhar via


Como: Especificar o formatador para mensagens recuperadas

Você deve indicar o objeto formatador que você deseja usar para recuperar uma mensagem de uma fila.Um formatador indica como uma mensagem irá ser desserializada quando ele é removido da fila.Dependendo do tipo de formatador de que usar, talvez seja necessário conjunto propriedades adicionais para especificar o formatador prossiga.

Por padrão, é usar o XmlMessageFormatter a maioria das operações. Para obter mais informações sobre os formatadores disponível para você, consulte Serialização de mensagem. Para obter informações sobre as propriedades exclusivas para o XmlMessageFormatter objeto, consulte Introdução à leitura e recuperar mensagens.

Você pode especificar o formatador no código ou no Propriedades janela.Além disso, você pode conjunto o formatador em fila ou a mensagem.Você conjunto formatador na fila quando você planeja acessar mensagens da fila diretamente, sistema autônomo no código a seguir:

Console.WriteLine(CStr(MessageQueue1.Receive().Body))
     Console.WriteLine(MessageQueue1.Receive().Body.ToString());

Você pode conjunto o formatador na mensagem quando você planeja recuperar Sumário da fila por meio do objeto de mensagem:

Message1 = MessageQueue1.Receive()
     message1 = messageQueue1.Receive();

Para especificar o formatador na janela Propriedades

  1. Criar e configurar o seu MessageQueue instância do componente. Para obter mais informações, consulte Como: Criar instâncias de componentes do MessageQueue.

  2. No designer, clicar sobre o MessageQueue instância e acessar o Propriedades janela.

  3. conjunto o Formatter propriedade para o valor apropriado.

  4. Se você escolher ambos o XmlMessageFormatter objeto ou a BinaryMessageFormatter objeto, expandir a propriedade e conjunto os subproperties necessárias para configurar o formatador.

Para especificar o formatador programaticamente

  1. Criar e configurar o seu MessageQueue instância do componente. Para obter mais informações, consulte Como: Criar instâncias de componentes do MessageQueue.

  2. No Editor de código, crie um objeto formatador do tipo XmlMessageFormatter, ActiveXMessageFormatter, ou BinaryMessageFormatter.

  3. Defina quaisquer propriedades necessárias para o formatador.

  4. Recupere sua mensagem.

    Por exemplo, o código a seguir mostra como criar e configurar um componente que usa o XmlMessageFormatter objeto para recuperar uma mensagem de uma fila pública chamada MyQueue.

    Dim mq As New System.Messaging.MessageQueue(".\MyQueue")
    Dim formatter As System.Messaging.XmlMessageFormatter = _
       CType(mq.Formatter, System.Messaging.XmlMessageFormatter)
    formatter.TargetTypeNames = New String() {"System.String"}
    Dim m As System.Messaging.Message = mq.Receive(New TimeSpan(0, 0, 3))
    
         System.Messaging.MessageQueue mq =
               new System.Messaging.MessageQueue(".\\MyQueue");
            string[] types = { "System.String" };
            ((System.Messaging.XmlMessageFormatter)mq.Formatter).TargetTypeNames =
               types;
            System.Messaging.Message m = mq.Receive(new TimeSpan(0, 0, 3));
    
    

Consulte também

Tarefas

Como: Receber mensagens por programação

Conceitos

Introdução à leitura e recuperar mensagens