Utwórz buforowaną kopię wiadomości WCF

Mam następujący kod w inspektorze wiadomości, aby sprawdzić treść odpowiedzi. Rozumiem, że wiadomość WCF może być odczytana tylko raz, więc najpierw tworzę kopię. Ale z następującym kodem nadal pojawia się błąd „Ta wiadomość nie obsługuje operacji, ponieważ została przeczytana.” ... Czy czegoś brakuje?

<code>        MessageBuffer buffer = message.CreateBufferedCopy(Int32.MaxValue);
        Message copy = buffer.CreateMessage();
        message = copy;

        XmlDictionaryReader bodyReader = copy.GetReaderAtBodyContents();
        bodyReader.ReadStartElement("Binary");
        byte[] bodyBytes = bodyReader.ReadContentAsBase64();
        string messageBody = Encoding.UTF8.GetString(bodyBytes);

        return messageBody;
</code>

Również nie czuję się komfortowo używając tam Int23.MaxValue. Jaki byłby rozsądny rozmiar?

questionAnswers(1)

yourAnswerToTheQuestion