c# - Entity Framework 4.1 Linq Contains 和 StartsWith

标签 c# .net linq entity-framework linq-to-entities

我正在使用 Entity Framework Code First。我想根据 List 对象从数据库中查询实体。这适用于包含,但我如何将它与 StartsWith 结合使用?

这是我的代码:

List<string> values = new List<string>();
values.Add("A");
values.Add("B");
context.Customer.Where(c => values.Contains(c.Name)).ToList();

我如何查询所有以 A 或 B 开头的客户?

最佳答案

这应该在内存中工作,但我不确定它是否可以被 EF 翻译成 SQL:

context.Customer.Where(c => values.Any(s => c.Name.StartsWith(s))).ToList();

关于c# - Entity Framework 4.1 Linq Contains 和 StartsWith,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8838292/

相关文章:

c# - 如何对日语字符进行编码

c# - 使用 Linq 将列表框项值转换为 int

c# - 使用 Linq 按列表中的多列分组并标记所有重复项

entity-framework - 将Linq.Contains方法添加到表达式Func <Object,Bool>

c# - 在 HTML 报告字段中显示尾随空格

c# - 如何确定哪个是 SUT,哪个是单元测试的合作者?

c# - 如何在表单加载时删除所有 DataGridView 行?

c# - 如何使用 Shell32.SHGetFileInfo 在 Windows 7 上获取文件夹图标

c# - 带有 postgres 的 dotnet core 2.2 EntityFramework

.net - NLog 中 Callsite 布局渲染器的性能影响