Compartilhar via


Serialização de mensagem

Serialização é o processo de fazer objetos e conversão de suas informações de estado em um formulário que pode ser armazenado ou transportado.A idéia básica de serialização é um objeto grava seu estado corrente, normalmente indicado pelo valor de suas variáveis de membro, para armazenamento persistente.Posteriormente, o objeto pode ser recriado lendo ou desserialização de estado do objeto do armazenamento.Serialização lida com todos os detalhes do objeto ponteiros e referências de objeto circular que são usadas ao serializar um objeto.

No recurso de enfileirar, serialização refere-se especificamente para o processo de conversão de um objeto ou conjunto de dados em uma mensagem que pode ser enviada para uma fila e, em seguida, convertendo as mensagens recuperadas da fila no objetos ou dados que pode processar seu aplicativo.

Um objeto formatador lida com a serialização de mensagem no seu Visual Studio ou .NET Framework aplicativos. Quando uma mensagem é enviada à fila, o formatador serializa um objeto em um fluxo que pode ser enviado para a fila de mensagens.Ao ler de uma fila, o formatador desserializa os dados da mensagem no Body propriedade.

Você escolher o tipo apropriado de formatador para o tipo de dados que você deseja enviar e receber.Visual Studio e o .NET Framework são fornecidos três formatadores predefinidos, cada um foi criado para persistir e de-persist outro tipo de dados:

  • The XmlMessageFormatter objeto persiste objetos e tipos primitivos de dados dentro e para fora das mensagens usando seqüências de caracteres XML legíveis. Este é o formatador padrão configuração para MessageQueue componentes.

  • The BinaryMessageFormatter objeto persiste um ou mais objetos conectados em fluxos serializados. O resultado é bastante compactos e rápido para analisar, mas não legível.

  • The ActiveXMessageFormatter objeto persiste tipos primitivos de dados, permitindo a interoperabilidade com componentes que usam versões anteriores do enfileirar de mensagens. A serialização resultante é bastante compacta.O formatador desta foi projetado com o Windows lembre-se e não produzir resultados legíveis.No entanto, é um método de serialização extremamente rápido.

Por padrão, um XmlMessageFormatter é criado quando você cria um MessageQueue ocorrência de componente e está associado a instância. Quando o Send método é chamado de MessageQueue instância, o corpo da sua mensagem é serializada usando este formatador. Não é necessário escrever nenhum código adicional para usar o formatador durante uma operação de enviar.

Leitura de uma mensagem é um pouco mais complexa.Para ler a fila usando um formatador, você deve conjunto propriedades que indica como o corpo da mensagem deve ser tratado.Se você estiver usando o XmlMessageFormatter o objeto, você conjunto o TargetTypes ou TargetTypeNames propriedade. Se você estiver usando o BinaryMessageFormatter objeto que você conjunto uma série diferente de propriedades. The ActiveXMessageFormatter objeto tem não há propriedades associadas. Para obter mais informações, consulte Lendo e recebendo mensagens.

Além de ser usado os formatadores acompanha Visual Studio e o .NET Framework, você pode criar seus próprios formatadores se você precisar trabalhar com diferentes tipos de dados. Você pode importar o formatador em um projeto e acessá-lo no código.

Você escolhe o formatador que deseja usar, definindo o Formatter propriedade para a fila de mensagem, ou MessageQueue componente com o qual você está trabalhando.

Vantagens de formatação da mensagem XML

Uma vantagem de formatador XML é que você pode ler as seqüências de caracteres que são criadas quando os dados ou objeto são serializados.Isso significa que, se algo acontecer e a mensagem não pode ser de-persisted da fila de mensagens, você pode observar a mensagem propriamente dita e provavelmente o problema.

Outra vantagem é que mensagens serializadas com o formatador desta não precisam ser desserializados pelo mesmo objeto formatador.Ou seja, você não precisará têm a mesma classe de formatador de receptor que você tinha no remetente, desde que ambas sistema autônomo partes sabem o esquema de dados.Além disso, as mensagens serializadas pelo formatador XML não tem necessariamente seja desserializado em todos os.A maioria dos navegadores e outros visualizadores XML podem analisar mensagens XML.

Consulte também

Tarefas

Como: Criar instâncias de componentes do MessageQueue

Outros recursos

Enviando e serializando mensagens