【发布时间】:2012-09-29 12:50:03
【问题描述】:
我是 .net 初学者。在问这里之前,我已经浏览了很多网站。我收到错误 - “对象引用未设置为对象的实例。” .这个错误通常发生在任何控件中有空值但在我的情况下每个控件都有一些文本,那么为什么会出现这个错误?这是我的xml file
cmbProduct --> combobox
txtNewBrand --> textBox
txtUpdateQuantity --> textBox
txtUpdatePrice --> textBox
我尝试了以下代码:
onButtonClick
XElement doc = XElement.Load(@"..\..\stock.xml");
var newElement = new XElement("items",
new XElement("productname", cmbProduct.Text),
new XElement("brandname", txtNewBrand.Text),
new XElement("quantity", txtUpdateQuantity.Text),
new XElement("price", txtUpdatePrice.Text));
/*ERROR*/ doc.Element("stock").Add(newElement);
doc.Save(xpath);
MessageBox.Show("updated successfully");
编辑:
而不是使用
XElement doc = XElement.Load(@"..\..\stock.xml");
我用过
var doc = XDocument.Load(@"..\..\stock.xml");
问题解决了。为什么会这样?
【问题讨论】:
-
检查 doc.Element("stock") 实际上有一个值并且没有返回 null。
-
好的,我会检查文档是否为空,谢谢。我会吓唬你等
-
我认为文档不为空。我编辑了我的问题
-
几乎所有的 NullReferenceException 情况都是一样的。请参阅“What is a NullReferenceException in .NET?”获取一些提示。