none
MSMQの本文から「encoding="UTF8"」が消えてしまう RRS feed

  • 質問

  • MessageQueueクラスのsendメソッドを使用してMSMQにメッセージを追加しているのですが、管理ツールからMSMQの本文を確認すると、Message.Bodyに設定したXML形式のstringから「encoding="UTF8"」の部分だけが消えてしまいます。

    Message.FormatterにはIMessageFormatterを実装した自作のクラスを使用しており、Writeメソッド内でBodyに設定したstringをバイト配列に変換して書き込んでいます。
    また、Message.BodyStreamに値を格納するまでは「encoding="UTF8"」は残っていることをデバッグにて確認しています。

    ためしに、設定しているstringの内容の該当部分を「Aencoding="UTF8"」などとするとそのまま設定されます。

    なぜ、このような現象になっているのでしょうか。また、Bodyに設定した文字列をそのままMSMQの本文に設定することは可能でしょうか。
    OSはVistaでVisualStudio2008を使用しています。
    2009年11月12日 6:04

回答

  • 実際に受信してみたところ、格納時の文字列がそのまま取得できました。
    管理ツールから閲覧した場合に、encodingの表示がされないようです。

    問題は解決しましたので、これで終了とさせていただきます。
    • 回答としてマーク shch 2009年11月12日 7:14
    2009年11月12日 7:14