чтение номеров строк и позиций символов элементов в XmlDocument - PullRequest
2 голосов
/ 23 марта 2011

У меня есть XML-документ, который я читаю, чтобы предоставить некоторые настройки, например;

01 <Layout>
02   <Variable name="leftEdge" value="100" />
03   <Rectangle x="leftEdge" y="100" />        
04   <Rectangle x="leftEdge2" y="100" />        
05 </Layout>

Я загружаю этот документ и запрашиваю его для элементов, но у меня есть довольно сложные правила проверки, которые не могут быть охвачены XSD. То, что я хотел бы сделать, это предоставить несколько ошибок в документе, например так:

ERROR: Rectangle at line 04 char 03: no variable called 'LeftEdge2' has been defined.

Но в данный момент я загружаю в XmlDocument, который не помнит, где были определены элементы в исходном файле.

Кто-нибудь знает о компоненте или методе, где я могу пометить XmlElement его исходной строкой и положением символа? Чтобы я мог написать;

var errorMessage = string.Format(
    "ERROR: {0} at line {1} char {2}: no variable called '{3}' has been defined.", 
    element.Name, 
    element.OriginalLineNumber, 
    element.OriginalCharacterNumber,
    missingVariableName);

1 Ответ

1 голос
/ 23 марта 2011

Я бы выполнил подобное требование несколько лет назад.Мы прекратили использовать компонент MSXML, импортированный как COM +.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...