我有這個代碼來加載xml文件,我不知道它是否完整。這是我的代碼。C#編輯XML,我完全丟失
public void updateXML(string xmlFile, string chooseNode, string chooseSingleNode, string newNode, string selectedCategory)
{
XmlDocument xml = new XmlDocument();
xml.Load(xmlFile);
foreach (XmlElement element in xml.SelectNodes(chooseNode))
{
foreach (XmlElement element1 in element)
{
if (element.SelectSingleNode(chooseNode).InnerText == selectedCategory)
{
XmlNode newvalue = xml.CreateElement(newNode);
newvalue.InnerText = "MODIFIED";
element.ReplaceChild(newvalue, element1);
xml.Save(xmlFile);
}
}
}
下面是我在最後使用的方法,其中我設置了xmlfile等。 (該如updateXML方法是在「data.cs」,這是從資料庫呼籲。
public void editCategory(string newNode)
{
string xmlFile = "Category.xml";
string chooseNodes = "ArrayOfCategory/Category";
string chooseSingleNode = "//Name";
string selectedCategory = "News";
repository.Update(xmlFile, chooseNodes, newNode, chooseSingleNode, selectedCategory);
}
我不確定要放什麼東西在有多種不同的節點等,上面我的代碼發現這裏#2。 - 下面是我XMLFILE,我想編輯
<?xml version="1.0" encoding="utf-8"?>
<ArrayOfCategory xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Category>
<Id>6b30511d-2cd1-4325-ad73-7b905f76ffc0</Id>
<Name>News</Name>
</Category>
<Category>
<Id>516401f4-b45c-46ef-b8f4-9d05021ae794</Id>
<Name>Pods</Name>
</Category>
<Category>
<Id>0c9cd216-86cf-4a62-884c-1b428150ebac</Id>
<Name>Pods</Name>
</Category>
</ArrayOfCategory>
我會很感激你的幫助
那麼,什麼是你的問題?你不應該保存你的XML文件在foreach中,只需將它保存在最後 – Koen 2014-10-28 13:57:53
好吧,它不工作..我在做某種方式寫錯誤的引用,例如//名稱等。我試圖解決它,但它總是卡在if語句中。 – DangerCoder 2014-10-28 14:00:09
沒有明確問題陳述的問題對這裏的未來讀者沒有任何價值。請編輯您的問題,以清楚說明您使用上述代碼遇到的問題,並提出可以回答的具體問題。 (不要在評論中包含它 - 將你的問題包含在那裏)。 – 2014-10-28 15:36:38