子孫を使用して XDocument を使用して XML ドキュメントをウォークする場合、自分が親の最後の子であると判断するにはどうすればよいですか?
XDocument xmlDoc = XDocument.Parse(xml)
foreach (var element in xmlDoc.Descendants())
{
//Need to determine the last child of the parent and do something here.
}
XML の例と返されると予想される内容。ドキュメントを動的にウォークする必要があり、XPath や Xquery を指定しないでください。なぜなら、これらはさまざまな XML ドキュメントに対して一般的に使用されるため、その理由について詳しく説明する必要はありません... XDocument でこれを実行できるかどうかを確認するだけです。ドキュメントが何レベルの深さであるかを知らなくても動的に実行できる場合を除き、XPath または XQuery でタグ名を指定しないというより良い方法があります。
<?xml version="1.0"?>
<Root>
<Customer>
<CustID>1</CustID>
<Name>Smith, Joe</Name>
<CustomerTransDetail>
<CustID>1</CustID>
<CustTransID>1</CustTransID>
<Note>NA</Note>
</CustomerTransDetail>
<CustomerTransDetail>
<CustID>1</CustID>
<CustTransID>2</CustTransID>
<Note>N/A</Note>
</CustomerTransDetail>
</Customer>
<Customer>
<CustID>2</CustID>
<Name>Smith, Jane</Name>
<CustomerTransDetail>
<CustID>2</CustID>
<CustTransID>1</CustTransID>
<Note>N/A</Note>
</CustomerTransDetail>
<CustomerTransDetail>
<CustID>2</CustID>
<CustTransID>2</CustTransID>
<Note>N/A</Note>
</CustomerTransDetail>
</Customer>
</Root>
何かできるように、親の最後の子をいつヒットしたかを知る必要があります。そのため、たとえば Name ノードや Note ノードを押すたびに、何かを実行できます。