Я хочу взять подузлы из файла XML, но с главным узлом, поэтому у каждого продукта есть два подузла.
Я могу записать в файл -> "название продукта", "информация", но мне нужнонаписать;
-> Test1, информация о test1, штрих-код вариации1
-> Test1, информация о test1, штрих-код вариации2
-> Test2, информация о test2, штрих-код вариации1
-> Test2, информация о test2, штрих-код вариации2
Как я могу это сделать? Пожалуйста, помогите мне.
Мой XML-файл:
-<Product>
-<ProductName>
test1
</ProductName>
-<Shortinfo>
asd
</Shortinfo>
-<info>
asdasdasdasdasdasdasdasdasdasdasd
</info>
-<ProductOption>
-<Option>
<variationID>1</variationID>
<Barcode>71079901877542</Barcode>
</Option>
-<Option>
<variationID>2</variationID>
<Barcode>71079901877542</Barcode>
</Option>
-</ProductOption>
-</Product>
-<Product>
-<ProductName>
test2
</ProductName>
-<Shortinfo>
asd
</Shortinfo>
-<info>
asdasdasdasdasdasdasdasdasdasdasd
</info>
-<ProductOption>
-<Option>
<variationID>1</variationID>
<Barcode>71079901877542</Barcode>
</Option>
-<Option>
<variationID>2</variationID>
<Barcode>71079901877542</Barcode>
</Option>
-</ProductOption>
-</Product>
C #
private static string EditText(XDocument xDocument)
{
var stbu = new StringBuilder();
foreach (var result in xDocument.Descendants("Product").Select(x => new
{
title = (string)x.Element("productName"),
shortinfo = (string)x.Element("shortinfo"),
info = (string)x.Element("info"),
barkod=(string)x.Element("ProductOption").Element("Option").Element("Barcode")
}))
{
stbu.AppendLine($"{result.barcode},{result.title},{result.shortinfo},{result.info}");
};
return stbu.ToString();
}
'option' подузел s 'product' и 'barcode' subnode s 'option'