XML LINQ:如何在 where 中使用 select?
我有一个包含产品名称和产品价格的 XML 目录。
我使用以下代码成功从目录中选择了所有项目:
var products = xElem.Descendants("catalog")
.Select(x => new
{
ProductPrice= x.Element("Price").Value,
ProductName = x.Element("Name").Value
});
如何修改上述代码以仅选择名称包含“abc”和“xyz”的项目? 在 SQL 中,我会使用 WHERE 和 LIKE,在这里,我想使用 LINQ 来做到这一点。 谢谢。
更多信息
其实我希望用户能够灵活查询。因此,如果用户输入“红色衬衫棉”,那么我将显示包含所有这 3 个术语的所有项目:“红色”、“衬衫”和“棉”。 “where”项的数量不固定。
I have an XML catalog with product Name and product Price.
I successfully select all items from my catalog with this code:
var products = xElem.Descendants("catalog")
.Select(x => new
{
ProductPrice= x.Element("Price").Value,
ProductName = x.Element("Name").Value
});
How do I modify the above code to select only items whose names contain "abc" and "xyz"?
In SQL I'd use WHERE and LIKE, here, I want to do this with LINQ.
Thanks.
MORE INFO
Actually, I want the user to be able to query flexibly. So if the user types "red shirt cotton" then I will show all items that has all those 3 terms: "red", "shirt" and "cotton". The number of "where" terms are not fixed.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)