我有一个获取id列表的函数,我需要返回一个列表,该列表与与id相关联的描述相匹配。例如:
public class CodeData
{
string CodeId {get; set;}
string Description {get; set;}
}
public List<CodeData> GetCodeDescriptionList(List<string> codeIDs)
//Given the list of institution codes, return a list of CodeData
//having the given CodeIds
}
因此,如果我自己为此创建sql,我只需执行如下操作(其中in子句包含codeIds参数中的所有值):
Select CodeId, Description FROM CodeTable WHERE CodeId IN ('1a','2b','3')
在Linq to Sql中,我似乎找不到" In“子句的等价物。到目前为止,我发现的最好的(不起作用)是:
var foo = from codeData in channel.AsQueryable<CodeData>()
where codeData.CodeId == "1" || codeData.CodeId == "2"
select codeData;
问题是,我不能为linq to sql动态生成"OR“子句列表,因为它们是在编译时设置的。
如何使用Linq to Sql实现where子句来检查列是否在动态值列表中?
https://stackoverflow.com/questions/1075540
复制相似问题