У меня есть xml без большой глубины и длины. Он содержит около 20 пар ключ-значение. Теперь я хочу прочитать одно конкретное значение. Легко? Ну, нет, если XmlReader вдруг не хочет больше:У XmlReader нет никакого контента - и да, я вызвал read() и т. Д.
Вход:
<?xml version="1.0" encoding="utf-8" ?>
<CATALOG>
<CD>
<TITLE>My test Title</TITLE>
</CD>
</CATALOG>
Первый тест с xmlConfig является XML как тип строки:
var reader = XmlReader.Create(new StringReader(xmlConfig));
reader.Read();
string theXmlString = reader.ReadOuterXml();
Результат: строка пуста
Второй тест с xmlConfig является xml как строка типа:
var reader = XmlReader.Create(new StringReader(xmlConfig));
reader.MoveToAttribute("myAttr");
string theXmlString = reader.ReadInnerXml();
Результат: Строка пуста.
Отладка показывает: читатель пуст. На самом деле он не читает строку.
У вас есть идеи?
использовать 'значения VAR = XDocument.Parse (xml_file_string) .Descendants() где (р => p.Name == "TITLE").. Выберите (n => n.Value) .ToList(); ' –
1) Что вы пытаетесь прочитать? Объявление XML? Или элемент ''? 2) В этом XML-атрибуте нет атрибута '' myAttr'', поэтому 'MoveToAttribute' не поможет. Что вы ожидаете от «MoveToAttribute»? –
dbc