private string signSoapMessage(string soapBody, X509Certificate2 certificate, SignSoapMessage.SignAlgorithm hashAlgorithm) { // Create XML document from usigned message text XmlDocument doc = new XmlDocument(); doc.LoadXml(soapBody); // Create signed message SignSoapMessage.SoapMessage message = new SignSoapMessage.SoapMessage(); message.Certificate = certificate; message.Body = doc.DocumentElement; XmlDocument result = message.GetXml(true, hashAlgorithm); // Convert XML document into text return(result.OuterXml); }