首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >xAttribute:何时使用显式转换?

xAttribute:何时使用显式转换?
EN

Stack Overflow用户
提问于 2017-07-06 16:27:03
回答 1查看 34关注 0票数 1

在我的项目中,我有一个名为nwCounter的xml元素,它包含许多名为Wire的元素,每个元素都有一个惟一的属性UId,它是一个整数。并不是所有的数字都被使用过。

当我使用linq-to-xml时,我可以通过两种方式搜索最高的UId编号:

代码语言:javascript
复制
Dim test1 As Integer = nwCounter.Descendants(networkNameSpace + "Wire").Max(Function(x) Convert.ToInt32(x.Attribute("UId").Value))
Dim test2 As Integer = nwCounter.Descendants(networkNameSpace + "Wire").Max(Function(x) x.Attribute("UId").Value)

test的结果是124test2的结果是99。第一个是正确的。

所以我的问题是:我应该总是使用显式转换吗?或者什么时候可以使用隐式转换?

EN

回答 1

Stack Overflow用户

发布于 2017-09-04 19:31:40

好吧,这个问题并没有产生太大的吸引力,但几周后,我突然意识到问题是什么:

Max函数始终搜索最高值,但它不接受有关类型的信息。默认情况下,它似乎假定类型是字符串。

如果按字母表排列所有属性,则99124更高。我之前没有看到这一点的原因是因为我只使用了10到99之间的值,所以我没有遇到这个问题。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44943579

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档