gpt4 book ai didi

c# - 为什么 XElement 没有 GetAttributeValue 方法?

转载 作者:可可西里 更新时间:2023-11-01 08:06:02 25 4
gpt4 key购买 nike

有时我想知道某些 API 更改的原因。由于谷歌没有帮助我解决这个问题,也许 StackOverflow 可以。为什么 Microsoft 选择删除 XML 元素上的 GetAttribute 辅助方法?在 System.Xml 世界中有 XmlElement.GetAttribute("x") 就像它之前的 MSXML 中的 getAttribute 一样,两者都返回属性值或缺失时为空字符串。使用 XElementSetAttributeValueGetAttributeValue 没有实现。

当然,修改逻辑以测试和使用 XElement.Attribute("x").Value 属性并没有太多工作,但它不是那么方便,并且以一种方式提供实用程序功能(SetAttributeValue) 但不是另一个看起来很奇怪。有没有人知道这个决定背后的原因,以便我可以轻松休息并从中学到一些东西?

最佳答案

你应该得到这样的属性值:

var value = (TYPE) element.Attribute("x");

更新:

例子:

var value = (string) element.Attribute("x");
var value = (int) element.Attribute("x");

等等

请参阅本文:http://www.hanselman.com/blog/ImprovingLINQCodeSmellWithExplicitAndImplicitConversionOperators.aspx .同样的事情适用于属性。

关于c# - 为什么 XElement 没有 GetAttributeValue 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3410585/

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