Пример #1
0
 void SignNode(XmlSigningNodeWriter writer)
 {
     switch (node.NodeType)
     {
         case XmlNodeType.None:
             break;
         case XmlNodeType.Element:
             SignStartElement(writer);
             for (int i = 0; i < attributeCount; i++)
                 SignAttribute(writer, attributeNodes[i]);
             writer.WriteEndStartElement(node.IsEmptyElement);
             break;
         case XmlNodeType.Text:
         case XmlNodeType.Whitespace:
         case XmlNodeType.SignificantWhitespace:
         case XmlNodeType.CDATA:
             node.Value.Sign(writer);
             break;
         case XmlNodeType.XmlDeclaration:
             writer.WriteDeclaration();
             break;
         case XmlNodeType.Comment:
             writer.WriteComment(node.Value.GetString());
             break;
         case XmlNodeType.EndElement:
             SignEndElement(writer);
             break;
         default:
             throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidOperationException());
     }
 }