vb.net中LINQ的新手问题

vb.net中LINQ的新手问题,vb.net,linq,exists,Vb.net,Linq,Exists,下面是我的一个函数中的一行代码,用于测试数组中的任何对象是否具有具有匹配值的给定属性 Return ((From tag In DataCache.Tags Where (tag.FldTag = strtagname) Select tag).Count = 1) 在哪里 DataCache.Tags是一个自定义对象数组 strtagname=“巴西” 巴西无疑是存储在数组中某个自定义对象中的标记名 但是,函数不断返回false 有人可以向我确认上述方法是否有效 如果它不起作用,有人能告诉我

下面是我的一个函数中的一行代码,用于测试数组中的任何对象是否具有具有匹配值的给定属性

Return ((From tag In DataCache.Tags Where (tag.FldTag = strtagname) Select tag).Count = 1)
在哪里

DataCache.Tags
是一个自定义对象数组

strtagname=“巴西”

巴西无疑是存储在数组中某个自定义对象中的标记名

但是,函数不断返回false

有人可以向我确认上述方法是否有效

如果它不起作用,有人能告诉我测试数组中的任何对象是否包含具有特定值的属性的最佳方法吗

总之,我想我在寻找与SQL EXISTS语句等价的语句


非常感谢您的希望。

您的代码当前正在检查计数是否正好是一

LINQ中存在的等价项为。你想要的是:

Return DataCache.Tags.Any(Function(tag) tag.FldTag = strtagname)

(不可思议的是,它的语法可能是正确的…它看起来像文档示例…

非常感谢您的回复

你的代码不起作用。然后我意识到我是在比较数组值,所以它是区分大小写的

不管我多么高兴地问了这个问题,因为我找到了一个比我更好的方法


再次感谢

乔恩·斯基特-你在这个网站上从粉丝那里收到了多少封电子邮件?@theman:其实不多。有几封来自我以前认识的人的邮件,但不多。