Linq to XML - как получить значение элемента - PullRequest
0 голосов
/ 17 сентября 2010
XElement config = XElement.Parse(
@"<Response SessionId='BEDF38F9ADAB4F029404C69E49951E73' xmlns='http://schemas.sample.com/sample.xsd'>
    <Status Success='true' Message='User is now logged in.' ErrorCode='0' />
    <UserID>80077702-0</UserID>
    </Response>");    
string masterID = (string)config.Element("UserID")

Как получить значение UserID из элемента UserID?

1 Ответ

2 голосов
/ 17 сентября 2010

Поскольку в XML указано xmlns='http://schemas.sample.com/sample.xsd', вам нужно получить значение, добавив к имени пространство префикса:

XElement config = XElement.Parse(@"<Response SessionId='BEDF38F9ADAB4F029404C69E49951E73' xmlns='http://schemas.sample.com/sample.xsd'>
    <Status Success='true' Message='User is now logged in.' ErrorCode='0' />
    <UserID>80077702-0</UserID>
    </Response>");    

var ns = config.GetDefaultNamespace();
string masterID = config.Element(ns + "UserID").Value;

Если xmlns не является частью XML, вы могли бы сделать этонапрямую используя config.Element("UserID").Value

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