C# 以XML节点为目标以更改值
我有一个XML文件,如下所示:-C# 以XML节点为目标以更改值,c#,asp.net,xml,linq-to-xml,C#,Asp.net,Xml,Linq To Xml,我有一个XML文件,如下所示:- <Root> <Player> <name>Name</name> <surname>Surname</surname> <rating>10</rating> </Player> <Player> <name>Name1</name> <
<Root>
<Player>
<name>Name</name>
<surname>Surname</surname>
<rating>10</rating>
</Player>
<Player>
<name>Name1</name>
<surname>Surname1</surname>
<rating>20</rating>
</Player>
</Root>
然而,我没有得到任何回报,即使名字,姓氏和评级在文件中
我做错了什么
感谢您的帮助问题在于返回包含元素标记的XML
相反,使用“[获取]此元素的串联文本内容”。问题是返回包含元素标记的XML
相反,使用“[获取]此元素的串联文本内容”。您需要使用
XElement.Value
属性,而不是调用ToString()
方法
doc.Root.Elements("Player").FirstOrDefault(x => x.Element("name").Value == playerInput.name
&& x.Element("surname").Value == playerInput.surname
&& Convert.ToInt32(x.Element("rating").Value) == playerInput.rating);
您需要使用
XElement.Value
属性,而不是调用ToString()
方法
doc.Root.Elements("Player").FirstOrDefault(x => x.Element("name").Value == playerInput.name
&& x.Element("surname").Value == playerInput.surname
&& Convert.ToInt32(x.Element("rating").Value) == playerInput.rating);
可能不是问题,但您是否有任何特定的理由使用
ToString()
而不是Value
或(如(int)(x.Element(“评级”)
)?可能不是问题,但您是否有任何特定的理由使用ToString()
而不是Value
或(如(int)(x.Element(“评级”)
) ?