我无法弄清楚如何为XmlNode
设置默认值。
我有一个名为XmlNode
的{{1}},并且当该节点不在xml文档中时,我想将其设置为“ 0”。这是我正在尝试的代码,无法正常工作。
RequirementMinTime
我在if语句中遇到以下错误
“ System.NullReferenceException:'对象引用未设置为 对象的实例。'“
这是对象声明:
XmlReader reader = XmlReader.Create(xmlpath, settings);
XmlDocument doc = new XmlDocument();
doc.Load(reader);
if (GlobalNode.SelectSingleNode("MinTimeMs") == null)
{
RequirementMinTime.Attributes["MinTimeMs"].Value = "0";
}
else
{
RequirementMinTime = GlobalNode.SelectSingleNode("MinTimeMs");
}
答案 0 :(得分:0)
您需要创建节点,否则无法设置值(假设您的XmlDocument
被命名为xmlDoc
:
if (GlobalNode.SelectSingleNode("MinTimeMs") == null)
{
RequirementMinTime = xmlDoc.CreateElement("MinTimeMs");
RequiredMinTime.Value = "0";
}
else
{
RequirementMinTime = GlobalNode.SelectSingleNode("MinTimeMs");
}
答案 1 :(得分:0)
这是解决方法
XmlReader reader = XmlReader.Create(xmlpath, settings);
XmlDocument doc = new XmlDocument();
doc.Load(reader);
if (GlobalNode.SelectSingleNode("MinTimeMs") == null)
{
XmlNode newNode = doc.CreateNode(XmlNodeType.Element, "MinTimeMs", "");
newNode.InnerText = "0";
GlobalNode.AppendChild(newNode);
RequirementMinTime = GlobalNode.SelectSingleNode("MinTimeMs");
}
else
{
RequirementMinTime = GlobalNode.SelectSingleNode("MinTimeMs");
}