Как обрабатывать пользовательские свойства узла XML, используя OpenXML 2.0 в C #. Net - PullRequest
1 голос
/ 07 января 2012

xml схема:

<root>
  <IssueDate type="1753-01-01T00:00:00.000" Value="1753-01-01T00:00:00.000" />
  <JacketCode type="STLSC0H" Value="STLSC0H" />
  <Master type="" Value="" />
</root>

Я использую приведенную выше XML-схему в наборе средств управления контентом для сопоставления со средствами управления содержимым слова.

Пользовательский XML-файл нашего приложения, имеющий код ниже XML:

<root>
  <IssueDate> 25-01-92T00:00:00.000</IssueDate>
  <JacketCode>STLSC0H" </JacketCode>
  <Master> Ranga Rajesh </Master>
</root>

Я изменил значения элементов управления содержимым слова с помощью пользовательских значений XML. Теперь моя задача - отформатировать IssueDate, JacketCode и Master. используя приведенный ниже код, я могу изменить значение главного тега, но значения IssueDate и JacketCode не меняются. Пожалуйста, помогите мне в этом отношении. Я искал много сайтов, я не получил никакого решения. Помогите мне, пожалуйста.

 using (var document = WordprocessingDocument.Open(str, true))
        {
            var docPart = document.MainDocumentPart;
            string strData = string.Empty;
            var sdts = docPart.Document.Descendants<SdtRun>();

            foreach (var sdt in sdts)
            {
                SdtAlias alias = sdt.Descendants<SdtAlias>().LastOrDefault();
                string sdtTitle = alias.Val.InnerText;
                SdtRun xRun = (SdtRun)sdt;
                //Text xText = xRun.Descendants<Text>().FirstOrDefault();

                strData = sdt.SdtContentRun.InnerText;

                Text txt = new Text("Ranga Rajesh");
                var newtext = new SdtContentRun(new Run(new RunProperties(), txt));
                sdt.SdtContentRun.RemoveAllChildren();
                sdt.SdtContentRun.InsertAt(newtext, 0);

                //xText.Text = "xtext";
                docPart.Document.Save();
            }
      }

Здесь я понимаю, что в XML-схеме IssueDate и JacketCode имеют значения свойств. как справиться с этим ...

Пожалуйста, ответьте в ближайшее время ... Я все еще жду решения.

...