sql - EF Core 生成错误 SQL
问题描述
我正在编写一个通用的存储库方法,如下所示:
public IEnumerable<T> GetEntities<T>(Func<T, bool> condition)
{
return _dbContext.Set<T>().AsQueryable<T>().Where(condition).ToList();
}
在一些 BLL 类上,我尝试使用这样的方法:
var specificUsersNames = .. // List<string> of names
var users = _usersRepo.GetEntities<User>(x => specificUserNames.Contains(x.Name));
在控制台中查看日志后,生成的 SQL 如下:
SELECT [u].[Id], [u].[Name], [u].[PhoneNr], [u].[Address]
FROM [User] AS [u]
我尝试过使用Any
而不是,Contains
但我得到了相同的结果。
它正在获取所有行,但是在调试时,它只显示正确的行。
知道为什么我会得到这个生成的 SQL 吗?
解决方案
推荐阅读
- arrays - React Native:平面列表和数组
- mysql - 在 OSX 上重置 MySQL / MariaDB 密码
- sql - 如何在登录页面之外创建创建帐户页面
- c# - 我无法让 Xamarin 播放小型媒体文件
- spring - SuccessAuthentication 中的 AbstractAuthenticationProcessingFilter 链
- python - 如何修复:无法将关键字“用户”解析为字段。选项有:description、end_time、id、start_time、title Django 错误
- c++ - 在 C++ 中不调用默认构造函数
- google-cloud-platform - 与 Samba 共享安装了 Google Fuse 的驱动器
- java - 如何修复“cvc-complex-type.2.4.c:匹配的通配符是严格的,但找不到元素 'tx:annotation-driven' 的声明。”
- root-framework - 使用 CERN ROOT 的 ntuple 直方图