gpt4 book ai didi

c# - XML 元素属性值是否始终为字符串数据类型?

转载 作者:太空宇宙 更新时间:2023-11-03 10:38:44 26 4
gpt4 key购买 nike

当我使用 LINQ 创建 XML 文档时,当我将一些 XElement 添加到具有某些属性的 Root 元素时,以及当我使用 LINQ 读取该文档的 XElement 时,XAttributes.Value 的返回值默认为字符串!
为了将此值分配给 bool 类型的变量,需要调用函数“Convert.ToBoolean()”

  XDocument Xd = new XDocument(new XElement("Numbers"));
Xd.Root.Add(new XElement("13", new XAttribute("Name", "13")
, new XAttribute("IsEvenNumber", false)
, new XAttribute("HowManyDevidersItHas", 2)));
Xd.Save(@"C:\XDocument.xml");
bool b1 = Convert.ToBoolean(XD1.Root.Element("13").Attribute("IsEvenNumber").Value);
...

如你所见:
名为“Name”的XAttribute的值必须是long类型!
名为“IsEvenNumber”的 XAttribute 的值必须是 bool 类型!

我需要知道:是否可以创建一个带有一些 XAttributes 的 XElement,保存它,再次读取它并将其 XAttributes.Value 分配给某个 bool 类型变量而不调用“Convert.ToBoolean()”函数?!

最佳答案

不幸的是,XElement.Value 属性似乎是一个字符串。

http://msdn.microsoft.com/en-us/library/system.xml.linq.xelement.value(v=vs.90).aspx

因此,您始终必须将值转换为您的数据类型。

关于c# - XML 元素属性值是否始终为字符串数据类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26379256/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com