我在交换C# 中 sid
列表中的属性时遇到了一些困难。是参考。Item
XDocument
id
输入:
<Items>
<Item base="book_bookref1_ref1">
<Name>Test1</Name>
<Ref>bookref1</Ref>
</Item>
<Item base="book_bookref1_ref2">
<Name>Test2</Name>
<Ref>bookref1</Ref>
</Item>
<Item base="book_bookref2_ref1">
<Name>Test3</Name>
<Ref>bookref2</Ref>
</Item>
<Item base="book_bookref2_ref2">
<Name>Test4</Name>
<Ref>bookref2</Ref>
</Item>
</Items>
预期输出:
<Items>
<Item base="book_bookref1_ref1" id="book_bookref1_ref2">
<Name>Test1</Name>
<Ref>bookref1</Ref>
</Item>
<Item base="book_bookref1_ref2" id="book_bookref1_ref1">
<Name>Test2</Name>
<Ref>bookref1</Ref>
</Item>
<Item base="book_bookref2_ref1" id="book_bookref2_ref2">
<Name>Test3</Name>
<Ref>bookref2</Ref>
</Item>
<Item base="book_bookref2_ref2" id="bookref2_ref1">
<Name>Test4</Name>
<Ref>bookref2</Ref>
</Item>
</Items>
有一个标签<Ref>
,其中一部分 value是1st 和 2nd的Base属性的ex:bookref1
引用。book_bookref1_ref1
Item
我需要将第二个“id”Item
写入第一个并将第一个写入循环中id
的第二个。Item
同样适用于 3rd 和 4th Item
。可以有很多,但它就像一个组合(1 和 2、3 和 4、5 和 6 等)。
这里的问题是可以有多个s 并且映射属性Item
中没有关系。Item
Id
我正在使用的代码正在加载XMLDocument
到LINQ 中XDocument
获取Item
s 。
Var doc = XDocument.Load(xml)
var ItemsList
foreach(var itm in ItemsList)
{
// I'm stuck here. How do we get the id attribute value based on Ref tag?
}
请让我知道你的建议。