Эй, ребята, у меня есть такой сценарий:
while (reader.Read())
{
if (reader.NodeType == XmlNodeType.Element && reader.Name == itemElementName)
{
XElement item = null;
try
{
item = XElement.ReadFrom(reader) as XElement;
}
catch (XmlException ex)
{
//log line number and stuff from XmlException class
}
}
}
В приведенном выше цикле я преобразую определенный узел (itemElementName) в XElement.
Некоторые узлы будут хорошим XML и перейдут в XElement, однако некоторые - нет.
В CATCH я хотел бы не только поймать стандартный материал XmlException ... Я также хотел бы поймать фрагмент текущего Xml и строки.
Однако, если я выполняю какие-либо операции чтения на узле, прежде чем передать его в XElement, он перемещает читателя вперед.
Как получить «снимок» содержимого OuterXml считывателя, не влияя на его положение?