私は2つのxmls.SourceXmlとTargetXmlを持っています
XML のいくつかの要素を別の XML にインポートしています。
これで問題ありませんが、一部の要素については名前を変更する必要があります。私が現在行っていることは、要素を最初から構築していることですが、唯一の違いはxmlの名前です。
例を挙げましょう。
私のソースXmlには、という要素があります
<OldBank>
<SortCode>123456</SortCode>
<AccountNumber>12345678</AccountNumber>
etc....
</OldBank>
My Target xml では、まったく同じ子要素を持つ NewBank を呼び出す必要があります
<NewBank>
<SortCode>123456</SortCode>
<AccountNumber>12345678</AccountNumber>
etc....
</NewBank>
これが私がすることです:
public static void ReplaceNewCustomerDetails(this XDocument xDoc)
{
XElement oldBankElement = GetOldBankElement(xDoc);
var newBakXml= new XElement("NewBank",
new XElement(oldBankElement.ElementOrDefault("SortCode")),
new XElement(oldBankElement.ElementOrDefault("AccountNumber")));
//Build new xml. This is what I do
var newXml = new XElement("MyNewXml");
newXml.Add(newBakXml);
//I wish I could just change the name of the xml rather then building it again
var newXml = new XElement("MyNewXml");
newXml.Add(oldBankElement.Name="NewBank");
任意の提案またはよりエレガントなソリューション
ありがとう