Member 13050667 Ответов: 0

Как добавить такие атрибуты в XML-узел: mq:nodename=""


Мне нужно экспортировать измененный xliff-файл из моего инструмента c#, но во время модификации вместо него используется другой предварительный тег, который я хочу использовать:
То, что я хочу показать, это:
mq:статус=""
Что я получаю:
p8:статус=""

Я попытался прочитать после этого, и теперь я знаю, что предварительные теги каким-то образом связаны с пространствами имен, но не знаю, как я могу изменить его или добавить "предварительный тег", который я хочу.

Что я уже пробовал:

Это код, который должен изменить содержимое файла:

XDocument doc = XDocument.Load(filePath);
            XElement xliff = (XElement)doc.FirstNode;
            XNamespace ns = xliff.Name.Namespace;

            var testid = xliff.Descendants(ns + "trans-unit");

            foreach (var item in testid)
            {
                var iD = Convert.ToInt16(item.FirstAttribute.Value) - 1;
                item.SetAttributeValue(ns + "status", units[iD].Status);
                item.SetAttributeValue(ns + "locked", units[iD].isLocked);
            }

            doc.Save(destination + "\\EXPORT.mqxliff");

Richard MacCutchan

Что там внутри ns когда вы запускаете код?

Member 13050667

это линия: Имя_пространства_имен = "урна:оазис:названия:ТС:формат XLIFF:документ:1.2"

Richard MacCutchan

1. Это не ответ на мой вопрос.
2. эта строка кода не существует в приведенном выше фрагменте кода.

Member 13050667

Извините, я новичок. Вот и все, что я вижу.:
https://pasteboard.co/IaJlqgr.png

Если это не то, что вы хотите, пожалуйста, перефразируйте.

Richard MacCutchan

Если вы не понимаете код, который вы написали, это немного трудно предложить много советов. Однако маленький треугольник слева от этой строки в отладчике предполагает, что вы можете развернуть эту строку, чтобы точно увидеть содержимое переменной.

Member 13050667

Я понимаю свой код, но не знаю, как обрабатывать эти атрибуты с помощью пространства имен перед ними.
Я видел, что могу расширить это поле, но не нашел ничего полезного:
https://pasteboard.co/IaJJxm2.png

Richard MacCutchan

Извините, но единственное, что я могу предложить, - это посмотреть документацию для XML-классов, которые вы пытаетесь использовать.

0 Ответов