c# System.ServiceModel.Channels.Message to file

Можно сообщение прочитать через Message.ToString(), но так неверно оно будет скопировано и если вдруг вы при этом подписываете сообщение, то может нарушиться подпись. Данный способ был рабочим для меня.
                    
using (var msstream = new MemoryStream())
                    {
                        var xmlWriter = XmlDictionaryWriter.CreateTextWriter(msstream);
 
                        m.WriteMessage(xmlWriter);
 
                        xmlWriter.Flush();
                        msstream.Position = 0;
                        using (FileStream file = new FileStream("Responce.xml", FileMode.Create, System.IO.FileAccess.Write))
                        {
                            byte[] bytes = new byte[msstream.Length];
                            msstream.Read(bytes, 0, (int)msstream.Length);
                            file.Write(bytes, 0, bytes.Length);
                        }
                    }

с# Добавляем сертфикат в "Доверенные корневые центры сертификации"

void InstallRootCert(string certFileName)
{
    X509Certificate2 certificate = new X509Certificate2(cerFileName);
    X509Store store = new X509Store(StoreName.TrustedPublisher, StoreLocation.LocalMachine);

    store.Open(OpenFlags.ReadWrite);
    store.Add(certificate);
    store.Close();
}