Ответ 1
Они называются инструкциями по обработке. Добавьте их с помощью XmlDocument.CreateProcessingInstruction.
Вот пример файла XML, созданного в InfoPath:
<?xml version="1.0" encoding="UTF-8"?>
<?mso-infoPathSolution solutionVersion="1.0.0.1" productVersion="12.0.0" PIVersion="1.0.0.0" href="file:///C:\Metastorm\Sample%20Procedures\InfoPath%20samples\Template1.xsn" name="urn:schemas-microsoft-com:office:infopath:Template1:-myXSD-2010-07-21T14-21-13" ?>
<?mso-application progid="InfoPath.Document" versionProgid="InfoPath.Document.2"?>
<my:myFields xmlns:my="http://schemas.microsoft.com/office/infopath/2003/myXSD/2010-07-21T14:21:13" xml:lang="en-us">
<my:field1>hello</my:field1>
<my:field2>world</my:field2>
</my:myFields>
Каковы те верхние 3 узла с вопросительным знаком, который называется... и как их создать на С#?
Пока у меня есть это:
XmlDocument xmldoc;
XmlDeclaration xmlDeclaration;
xmldoc=new XmlDocument();
xmlDeclaration = xmldoc.CreateNode(XmlNodeType.XmlDeclaration, "", "") as XmlDeclaration;
xmlDeclaration.Encoding = "UTF-8";
xmldoc.AppendChild(xmlDeclaration);
Это отлично подходит для верхнего объявления XML node, но как создать следующие два?
Заранее спасибо:)
Они называются инструкциями по обработке. Добавьте их с помощью XmlDocument.CreateProcessingInstruction.
Это называется инструкциями по обработке. Вы можете использовать класс XmlProcessingInstruction
для взаимодействия с ними в XmlDocument
.
Как и в большинстве элементов, определенных в XmlDocument
, вы не можете создавать его напрямую; вы должны использовать соответствующий метод factory на XmlDocument
(CreateProcessingInstruction
в этом конкретном случае.)
Спасибо, что объяснили, что это инструкции по обработке. Используя CreateProcessingInstruction, как предлагается, вот решение:
xmlPi = xmldoc.CreateProcessingInstruction("mso-infoPathSolution", "solutionVersion=\"1.0.0.1\" productVersion=\"12.0.0\" PIVersion=\"1.0.0.0\" href=\"file:///C:\\Metastorm\\Sample%20Procedures\\InfoPath%20samples\\Template1.xsn\" name=\"urn:schemas-microsoft-com:office:infopath:Template1:-myXSD-2010-07-21T14-21-13\"");
xmldoc.AppendChild(xmlPi);