2014-01-09 5 views
0

Я хочу сделать что-то вроде:XmlReader, получить имя атрибута

stringBuilder.AppendLine(" globalVar." + reader.GetAttribute(i).Name + " = " + reader[i] + "; //add param "); 

Где «reader.GetAttribute (я) .Name» является компонентом, который не работает. Есть ли эквивалентный метод для получения имени атрибута?

+0

Проверьте [MSDN - Атрибуты чтения] (http://msdn.microsoft.com/en-us/library/by2bd43b%28v=vs.110%29.aspx) –

ответ

2

reader.MoveToAttribute(i), то вы можете использовать reader.Name и reader.Value.

+0

спасибо, что это в конечном итоге работало ... I пришлось изменить какую-то логику, но это произошло. – yoyo

0

Использование Name и Value непосредственно на читателя - см образец из Reading Attributes ниже:

if (reader.HasAttributes) { 
    Console.WriteLine("Attributes of <" + reader.Name + ">"); 
    while (reader.MoveToNextAttribute()) { 
    Console.WriteLine(" {0}={1}", reader.Name, reader.Value); 
    } 
    // Move the reader back to the element node. 
    reader.MoveToElement(); 
} 
0

GetAttribute() возвращает строковое значение атрибута. У него нет свойства «имя». Попробуйте перейти к атрибуту, а затем получить свойство «Имя».

+0

Что значит «переместить атрибут»? Я знаю, что GetAttribute() возвращает строковое значение атрибута ... Я спрашиваю, есть ли способ получить «идентификаторы», если вы будете использовать каждый атрибут. – yoyo

+0

Я вижу, что у Иоанна есть ответ выше. Читатель. перейдите к атрибуту (i). Их читатель. Имя должно это сделать. – AnthonyBCodes

Смежные вопросы