C# 正在尝试更新XML的节点值及其';它抛出了一个异常
我正在尝试从XML文件更新节点值,但当我尝试执行此操作时,会引发异常“附加信息:对象引用未设置为对象实例” 这就是我所拥有的:C# 正在尝试更新XML的节点值及其';它抛出了一个异常,c#,.net,xml,nodes,C#,.net,Xml,Nodes,我正在尝试从XML文件更新节点值,但当我尝试执行此操作时,会引发异常“附加信息:对象引用未设置为对象实例” 这就是我所拥有的: public void UpdateXMLValues(List<string> values) { XmlNode node; xmldoc = new XmlDocument(); xmldoc.Load(XMLInterfaces); node = xmldoc.SelectSingleNode("Servers/MYS
public void UpdateXMLValues(List<string> values)
{
XmlNode node;
xmldoc = new XmlDocument();
xmldoc.Load(XMLInterfaces);
node = xmldoc.SelectSingleNode("Servers/MYSERVER");
XMLValues = new List<string>(values);
node.Attributes["Host"].Value = XMLValues[0];
xmldoc.Save(XMLInterfaces);
}
public void UpdateXMLValues(列表值)
{
XmlNode节点;
xmldoc=新的XmlDocument();
加载(XMLInterfaces);
node=xmldoc.SelectSingleNode(“服务器/MYSERVER”);
XMLValues=新列表(值);
node.Attributes[“Host”]。Value=XMLValues[0];
Save(XMLInterfaces);
}
这是我的XML信息:
<Servers>
<MYSERVER>
<Host>0.0.0.0</Host>
<Port>23</Port>
<User>TestingUser</User>
<Password>/NNfWRStbZsUyc88S5tjhA==</Password>
</MYSERVER>
</Servers>
0.0.0.0
23
测试者
/NNfWRStbZsUyc88S5tjhA==
当我在行节点中按F11时。Attributes[“Host”]。values=XMLValues[0];我发现了错误
有什么想法吗?
Host
不是MYSERVER
元素的属性。它是其中的一个元素
您可以这样访问它:
var hostNode = node["Host"];
hostNode.Value = XMLValues[0];
作为参考,如果它是一个属性,您的XML将如下所示:
<MYSERVER host="some_host">
</MYSERVER>
看起来您的xml无效,需要一个结束标记,或者需要自动结束。抱歉!它有一个封闭的标签,只是我没有在我的示例中添加…你能用正确的xml更新你的问题吗?结束标记位于何处?如果不是一个属性,那么我如何更新该值?我已经更新了问题,以包括如何更新该值。我使用以下解决方案获得该结果:var hostNode=node[“Host”];hostNode.Value=XMLValues[0]@JavierSalas Errr-你有什么错误吗?我不太清楚你在说什么。