GetRequiredAttributeValue

GetRequiredAttributeValue<T>(XmlNode, String, String)

Возвращает значение из XmlNode, содержащееся в атрибуте элемента по указанному пути. Если элемент или атрибут отсутствуют, будет возвращено исключение.

public static T GetRequiredAttributeValue<T>(XmlNode node,
                                             string path,
                                             string attribute)

Параметры

node System.Xml.XmlNode Узел XmlNode, содержащий нужный элемент.

path System.String Путь до нужного элемента.

attribute System.String Атрибут, из которого нужно получить значение.

Возвращает

T Значение атрибута нужного элемента.

Исключения

InvalidXmlException Если в описании узла node отсутствует элемент по пути path или его атрибут attribute.

GetRequiredAttributeValue<T>(XmlNode, String, String, String)

Возвращает значение из XmlNode, содержащееся в атрибуте элемента по указанному пути. Если элемент или атрибут отсутствуют, будет возвращено исключение, сообщение которого будет дополнено переданным текстом.

public static T GetRequiredAttributeValue<T>(XmlNode node,
                                             string path,
                                             string attribute,
                                             string additionalMessage)

Параметры

node System.Xml.XmlNode Узел XmlNode, содержащий нужный элемент.

path System.String Путь до нужного элемента.

attribute System.String Атрибут, из которого нужно получить значение.

additionalMessage System.String Дополнительное сообщение, которое будет добавлено в текст исключения.

Возвращает

T Значение атрибута нужного элемента.

Исключения

InvalidXmlException Если в описании узла node отсутствует элемент по пути path или его атрибут attribute.

Примечания

Вы можете использовать этот метод, чтобы дополнить текст сообщения об ошибке информацией, раскрывающей суть обязательного атрибута. Таким образом, сообщения об ошибках будут полными и заменять документацию.

Примеры

Пример 1

В следующем примере извлекается значение атрибута Name тэга <SettingsSqlQuery>:

XmlParser.GetRequiredAttributeValue<string>(node, "SettingsSqlQuery", "Name");

Описание команды типа MyCommand в xml-файле:

<Command Name="MyCommand" Type="MyCommand" Assembly="TemplateEngine">
  <SettingsSqlQuery Name="SettingsSelectSqlQuery" />
</Command>

Пример 2

В следующем примере извлекается значение атрибута Name тэга <SettingsSqlQuery>, вложенного в тэг <SqlQueries>:

XmlParser.GetRequiredAttributeValue<string>(
    node, "SqlQueries/SettingsSqlQuery", "Name",
    "В элементе SettingsSqlQuery указывается имя запроса на получение настроек.");

В метод GetRequiredAttributeValue последним параметром передается дополнительное сообщение, которое будет добавлено в текст исключения.

Описание команды типа MyCommand в xml-файле:

<Command Name="MyCommand" Type="MyCommand" Assembly="TemplateEngine">
  <SqlQueries>
    <SettingsSqlQuery Name="SettingsSelectSqlQuery" />
    <SaveSqlQuery Name="UpdateSqlQuery" />
  </SqlQueries>
</Command>

Last updated