Dar*_*ent 1 c# linq linq-to-objects
我正在尝试为Linq语句构造一个Where子句,该子句需要确定集合中是否存在如下检索的AccountNumber值List<string>.
我到目前为止试过这个:
private void FindAccountNumbers(List<string> AccountNumbers)
{
var query = from abc
select new
{
AccountNumber = abc.AccountNumber
};
query = query.Where(AccountNumbers.Contains(x => x.AccountNumber));
}
Run Code Online (Sandbox Code Playgroud)
但是我收到以下构建错误:
无法从用法中推断出方法'System.Linq.Queryable.Where(System.Linq.IQueryable,System.Linq.Expressions.Expression>)'的类型参数.尝试显式指定类型参数.
在运行时,query包含AccountNumber值,我试图根据AccountNumbers集合中找到的匹配(类似于TSQL中的IN语句)来减少它.我应该使用Intersect而不是Contains?我究竟做错了什么??
我想你想要这个:
query = query.Where(x => AccountNumbers.Contains(x.AccountNumber));
Run Code Online (Sandbox Code Playgroud)