2011-08-04 8 views
1

XDocumentを使用すると、次のコードをどのように書き直すことができますか?このコードは、要素値をstrValuesに置き換えます。要素はstrKeysstrXPath = "/root/node/subnode[param1='value1' and param2='value2']"で指定されます。要素をXmlDocumentの代わりにXDocumentに置き換えます

public static void ReplaceXmlElement(string strXPath, string[] strKeys, string[] strValues) 
    { 
     XmlDocument xDoc = new XmlDocument(); 
     xDoc.Load(xmlFile.xml); 
     XmlNode xNode = xDoc.SelectSingleNode(strXPath); 
     int intTemp = 0; 
     foreach (XmlNode node in xNode) 
     { 
      node.Name.ToString(); 
      if (node.Name == strKeys[intTemp]) 
      { 
       node.InnerXml = strValues[intTemp]; 
       intTemp++; 
      } 
     } 
     xDoc.Save(xmlFile.xml); 
    } 

答えて

0

http://msdn.microsoft.com/en-us/library/bb156083.aspx

XElement root = new XElement("Root", 
new XElement("Child1", 1), 
new XElement("Child2", 2), 
new XElement("Child3", 3), 
new XElement("Child4", 4), 
new XElement("Child5", 5), 
new XElement("Child6", 6) 
); 

XElement el = root.XPathSelectElement("./Child4"); 
関連する問題