C# 正在尝试更新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

我正在尝试从XML文件更新节点值,但当我尝试执行此操作时,会引发异常“附加信息:对象引用未设置为对象实例”

这就是我所拥有的:

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-你有什么错误吗?我不太清楚你在说什么。