Ich versuche, 3 Daten in einem XML-Dokument zu aktualisieren, aber einen Fehler "Objektreferenz nicht auf eine Instanz eines Objekts festgelegt". Dies wird das XML-Dateiformat Ich versuche zu aktualisieren: DieseUPDATE XML, erhalten "Objektreferenz nicht auf eine Instanz eines Objekts festgelegt"
<?xml version="1.0" encoding="US-ASCII" standalone="true"?>
<ExportSettings xmlns="CompanyName" ExportName="Data Export" Dataset="TestName">
<General>
<AsOfDate>03/31/15</AsOfDate>
<PriceDate>03/31/16</PriceDate>
</General>
<Source>
<Set>Set Name</Set>
</Source>
</ExportSettings>
ist der C# -Code, der den Fehler zu werfen:
private void btnUpdate_Click(object sender, EventArgs e)
{
try
{
{
string strAsOfDate = dateTimePickerAsOfDate.Text;
string strPriceDate = dateTimePickerPriceDate.Text;
string strSetName = txtboxSet.Text;
XmlDocument doc = new XmlDocument();
doc.Load(strXMLfilepath);
XmlNode General;
XmlNode root = doc.DocumentElement;
General = root.SelectSingleNode("/ExportSettings/General");
General["AsOfDate"].InnerText = strAsOfDate;
General["PriceDate"].InnerText = strPriceDate;
XmlNode Source;
Source = root.SelectSingleNode("/ExportSettings/Source");
Source["Set"].InnerText = strSetName;
doc.Save(strXMLfilepath);
}
}
catch (System.Exception excep)
{
MessageBox.Show(excep.Message);
}
}
Kann jemand das Problem? Ich bin nicht sehr vertraut mit der Aktualisierung von XML, so dass hier etwas Grundlegendes falsch sein kann.
Welche Zeile wirft die Ausnahme? Sie sollten in der Lage sein, dies leicht zu debuggen und zu sehen, welche Variable null ist. –
Allgemein ["AsOfDate"]. InnerText = strAsOfDate; Außerdem ist strAsOfDate nicht null, wenn die Ausnahme ausgelöst wird. – overlook77
Wenn Sie einen Haltepunkt in dieser Zeile platzieren, ist die Variable "General" null? Wenn nicht, dann schlägt der "General [" AsOfDate] "fehl und gibt null zurück, was bedeutet, dass der .InnerText die Ausnahme auslöst, die Sie sehen. –