[英]Select and WHERE using LINQ
我有以下课程:
public class CatalogResponseRootObject
{
public Plans Plans { get; set; }
}
public class Plans
{
public List<Plan> plan { get; set; }
}
public class Plan
{
public List<PlanPackage> Packages { get; set; }
}
public class PlanPackage
{
public List<Package2> Package { get; set; }
}
public class Package2
{
public string Name { get; set; }
}
我有一个有效的查询。 但是现在我正在尝试使用Where子句来获取这些cPlans
WHERE cPlans
Package2.Name == "Annual"
。 是否可以使用Where
子句以及如何检索此类信息?
CatalogResponseRootObject catalogResponse = response;
qualifiedPlans = (from cPlans in catalogResponse.Plans.plan
join qPlans in conversationIDResponsePlans.plan on cPlans.Id equals qPlans.Id
select cPlans).ToList();
因此,计划中的软件包中包含软件包,并且至少应有一个Name
“ Annual”的软件包? 您可以添加一个条件:
where cPlans.Packages.Any(p1 => p1.Package.Any(p2 => p2.Name == "Annual"))
这将返回包含至少一个软件包和至少一个名为“ Annual”的软件包的计划。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.