用于检查具有 null 元素的 xml 数据的 linq select 语法是什么?

发布于 2024-12-28 10:01:00 字数 488 浏览 0 评论 0原文

我正在处理 xml 市场数据,并且该 linq 的几乎相反工作正常,但我想返回具有属性“symbol”但具有空“LastTradeDate”元素的元素的计数。下面的代码返回 0,但我知道它们就在那里。我想我应该保留所有 xml 数据,因为它可能很明显发生了什么。这是我所得到的:

XDocument doc = XDocument.Load(addressString);
         XElement results = doc.Root.Element("results");    
var makeInfo =
         (from s in doc.Descendants("quote")
         where s.Element("LastTradeDate") == null
         && s.Attribute("symbol") != null
         select s.Attribute("symbol")).Count();

I'm working with xml market data and I got the almost inverse of this linq to work fine, but I'd like to return the count of the elements that have an attribute "symbol", but have a null "LastTradeDate" element. The code below is returning 0 but I know they're in there. I figured I'd spare all the xml data figuring it's likely obvious what is going on. Here's what I've got:

XDocument doc = XDocument.Load(addressString);
         XElement results = doc.Root.Element("results");    
var makeInfo =
         (from s in doc.Descendants("quote")
         where s.Element("LastTradeDate") == null
         && s.Attribute("symbol") != null
         select s.Attribute("symbol")).Count();

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

べ映画 2025-01-04 10:01:00
XDocument doc = XDocument.Load(addressString);
         XElement results = doc.Root.Element("results");    
var makeInfo =
         (from s in doc.Descendants("quote")
          let lastTradeDate = s.Element("LastTradeDate")
          where (lastTradeDate == null || string.IsNullOrEmpty(lastTradeDate.Value))
          && s.Attribute("symbol") != null
          select s.Attribute("symbol")).Count();
XDocument doc = XDocument.Load(addressString);
         XElement results = doc.Root.Element("results");    
var makeInfo =
         (from s in doc.Descendants("quote")
          let lastTradeDate = s.Element("LastTradeDate")
          where (lastTradeDate == null || string.IsNullOrEmpty(lastTradeDate.Value))
          && s.Attribute("symbol") != null
          select s.Attribute("symbol")).Count();
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文