我有一个名为 'generation_unit_mobile' 的表:
现在,我正在尝试根据以下where子句获取结果:
public int MobileExistToAnotherGenerationUnit(string mobileNo, long generationUnitId)
{
var result = _mobileRepository.Table
.Where(gum => gum.mobileno == mobileNo && gum.generation_unit_id != generationUnitId)
.Select(s => new Generation_unit_mobile
{
id = s.id
})
.FirstOrDefault();
return result == null ? 0 : 1;
}
从上面这段代码中,MobileExistToAnotherGenerationUnit应该为generation_unit_id = 2和mobileno = 01673050495返回 1 。但是对于这个mobileno和generation_unit_id = 2,它返回0。奇怪的是,对于generation_unit_id = 1和mobileno = 01673050495,它也返回0。我的代码怎么了?
答案 0 :(得分:0)
将mobileno转换为字符串,以便 db获取以下查询
Select * from your_table where
generation_unit_id=2 and
Mobileno='01673040595' --single quote essential
答案 1 :(得分:0)
计算结果:
如果计数为零,则返回0否则为1
ydl = youtube_dl.YoutubeDL({
'outtmpl': '%(title)s%(ext)s',
})
with ydl:
ydl.download('https://www.youtube.com/watch?v=XA6bS8TyN10')
答案 2 :(得分:0)
此答案不会解决您遗漏的结果,只是提示,您可以简化代码。
public Task<bool> MobileExistToAnotherGenerationUnit(string mobileNo, long generationUnitId) =>
_mobileRepository.Table
.AnyAsync(gum => gum.mobileno == mobileNo && gum.generation_unit_id != generationUnitId);
似乎: