用例: 我需要根据来自 BackgroundJob 的 ARGS 提取用户记录
public class ULBackgroundJob : BackgroundJob<ULJobArgsDto>, ITransientDependency, IULBackgroundJob
{
private readonly IRepository<User, long> _userRepository;
public ULBackgroundJob
(IRepository<User, long> userRepository)
{
_userRepository = userRepository;
}
public override void Execute(ULJobArgsDto args)
{
User user = _userRepository.FirstOrDefault(args.UserId);
}
}
结果: 我总是得到零结果,并且我检查了用户 ID 值是否存在。
可疑问题: 生成的 SQL 将“@__ef_filter__IsMayHaveTenantFilterEnabled_1=1”插入到查询中,所以我怀疑当我从 BackgroundJob 运行时需要以某种方式将其设置为零..?