Pur*_*ome 3 .net c# linq lambda
注意:pseduo代码和虚假思考的现场类/属性......以保护无辜者
我正在尝试检索Person实例,其中该人具有特定名称... IQueryable结果.
鉴于以下代码......
public class Person
{
public ICollection<PersonDetails> PersonDetails { get; set; }
}
public class PersonDetails
{
public string Name { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我怎样才能找到一个Person名叫'Fred'的人?
我在尝试(失败了)......
public static IQueryable<Person> WithName(this IQueryable<Person> value,
string name)
{
return value.Where(x => x.PersonDetails.Where(y => y.Name == name));
}
Run Code Online (Sandbox Code Playgroud)
..那不编译.
任何线索,偷看?
Mar*_*ers 12
尝试Any而不是第二个Where:
public static IQueryable<Person> WithName(this IQueryable<Person> value,
string name)
{
return value.Where(x => x.PersonDetails.Any(y => y.Name == name));
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
128 次 |
| 最近记录: |