Чтение атрибутов XML из запроса SOAP в службу WCF - PullRequest
2 голосов
/ 28 февраля 2012

У меня есть класс MessageContract со свойствами с установленным атрибутом MessageBodyMember.Входящий запрос на мыло содержит элемент XML, который выглядит следующим образом:

<level num="3">error</level>

Свойство для уровня ошибки внутри MessageContract выглядит следующим образом:

[MessageBodyMember(Name="level", Order = 6)]
public string ErrorLevel { get; set; }

Вместо строки 'ошибка », я хочу прочитать значение атрибута« num ».Есть ли способ сделать это?

1 Ответ

0 голосов
/ 29 марта 2012

Вы можете создать тип xml, используя этот класс: http://msdn.microsoft.com/en-us/library/system.xml.linq.xelement.aspx

Код:

TextReader sr = new StringReader("<level num="3">error</level>");
XElement xml = XElement.Load(sr);

Как только это будет сделано, вы можете получить доступ к таким атрибутам, как:

int Num = Int32.Parse(xml.Element("level").Attribute("num").Value);

Если вы создаете полный XML-документ, вам нужны "XDocument" и "XDeclaration".

Запомните необходимые операторы using.

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