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を使用しています。