【发布时间】:2015-03-16 08:15:12
【问题描述】:
我正在使用 .NET Framework 4.5.1 和 C# 开发 Entity Framework 6.1.2 库。
我有这个谓词:
Expression<Func<EXTERNAL_CODES, bool>> predicate = null;
List<string> codes = GetStartEntCodes(startingCode, quantity);
predicate = (e =>
e.USED == 0
&& codes.Contains(e.CODE)
&& e.CHINA_CODES_HEADER_ID == batch.Id
&& e.CODE_LEVEL == codeLevel
&& (e.BATCH_ID == batch.Id || e.BATCH_ID == null));
但是&& chinaCodes.Contains(e.CODE)这部分不起作用。
e.CODE 是 nvarchar(20),codes 列表中的每个字符串仅包含前 15 个字符。
我想这样做:
`WHERE CODE LIKE `codes.value%'; -- Note: `codes.value%' represents each value in codes list.`
我该怎么做?
【问题讨论】:
标签: c# sql-server entity-framework lambda