запрос в xml выбор данных - PullRequest
1 голос
/ 21 февраля 2020

Как я могу сделать эту команду в C# и xml выбрать имя, где store равно 170.

У меня есть этот код:

C#:

var name = textBox2.Text;
XDocument doc = XDocument.Load(@"C:\Work\stores.xml");

var xpath = "//*[text()='" + name + "']";

var result = ((IEnumerable)doc.XPathEvaluate(xpath)).Cast<XElement>().FirstOrDefault();
textBox1.Text = result.Value;

XML:

<stores>
    <store rollNumer="170">
        <Name>Jonh</Name>
        <Color>Pink</Color>
        <Sell>Sugar</Sell>
    </store>

    <store rollNumer="120">
        <Name>Tedy</Name>
        <Color>Brown</Color>
        <Sell>Rice</Sell>
    </store>
</stores>

Спасибо

1 Ответ

1 голос
/ 21 февраля 2020

Вы можете использовать лямбда-выражение для выбора любых xml элементов в XDocument.

В вашем случае:

var storeElement = doc.Descendants("store").Where(e => e.Attribute("rollNumer").Value == "170").First();  
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...