我已经检查过我试图写入的xml文件不是只读的。
我认为我的问题可能是我需要替换XML文件内容而不是保存它们(因为我添加了一个新的元素/节点)。我只需要几天的时间来使用xml并将文件直接加载到XElement:
//My load of the file:
XElement _xContextProjectData = XElement.Load(@"Model\ProjectData.xml");
//feed it to my viewmodel
//adding a new node that I intend to save to the file:
private void AddNote()
{
var newNote = new XElement("Note", new XAttribute("NoteIndex", noteIndex), new XAttribute("Note", ""));
_xContextProjectData.Element("Notes").Add(newNote);
noteIndex++;
_xContextProjectData.Save(@"Model\ProjectData.xml");
_notes.Add(newNote);
RaisePropertyChanged("Notes");
}
请帮我找到我失踪的东西。在此先感谢:)
::编辑::
我正在尝试:
var newNote = new XElement("Note", new Attribute("NoteIndex", noteIndex), new XAttribute("Note", ""));
XDocument projDataDoc = XDocument.Load(@"Model\ProjectData.xml");
projDataDoc.Element("Notes").Add(newNote);
projDataDoc.Save(@"Model\ProjectData.xml");
并收到以下错误消息:
"Check to determine if the object is null before calling the method. Use the "new" keyword to create an object instance."
但是,我使用的所有属性都不为空,这令人困惑。