如何执行以下 Linq / Lambda 代码?
注意:伪代码和假想法现场类/属性...以保护无辜
我正在尝试检索 Person
实例,其中该人有一个特定的名字...作为 IQueryable
结果。
给定以下代码...
public class Person
{
public ICollection<PersonDetails> PersonDetails { get; set; }
}
public class PersonDetails
{
public string Name { get; set; }
}
我如何检索名为 'Fred' 的 Person
?
我正在尝试(失败了)......
public static IQueryable<Person> WithName(this IQueryable<Person> value,
string name)
{
return value.Where(x => x.PersonDetails.Where(y => y.Name == name));
}
并且无法编译。
有线索吗,偷看?
Note: pseduo code and fake-thought-up-on-the-spot classes/properties ... to protect the innocent
I'm trying to retrieve the Person
instance, where the person has a particular name ... as an IQueryable
result.
Given the following code...
public class Person
{
public ICollection<PersonDetails> PersonDetails { get; set; }
}
public class PersonDetails
{
public string Name { get; set; }
}
how can I retrieve a Person
, who has the name 'Fred' ?
I was trying (which failed) ....
public static IQueryable<Person> WithName(this IQueryable<Person> value,
string name)
{
return value.Where(x => x.PersonDetails.Where(y => y.Name == name));
}
.. and that doesn't compile.
Any clues, peeps?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
尝试使用
Any
而不是第二个Where
:Try
Any
instead of the secondWhere
: