修改 Linq 查询以添加另一个条件
Modifying a Linq query to add another condition
我有一个方法可以提取具有空值的特定字段。
table 中的每条记录都有一个状态字段 1 或 0。1 是活动的,0 是不活动的。
对于下面的查询,我只想提取活动记录的数据,即 status = 1
如何修改此查询以放入 status = 1 的条件?
public List<FileModel> GetMyData()
{
var collectedData = _context.MyUploads.AsNoTracking().Where(t =>
t.FirstName == null ||
t.LastName == null ||
t.EmailAddress == null ||
t.Telephone == null)
.Select(x => _mapper.Map<FileModel>(x))
.ToList();
return collectedData;
}
您应该可以将 where 条件更改为以下内容
.Where(t => (t.FirstName == null || t.LastName == null || t.EmailAddress == null || t.Telephone == null) && t.status == 1)
&& 的意思是和,所以它表示那些字段为空并且状态等于 1。
您可以一个接一个地链接两个 Where
Linq 扩展方法调用,如下所示:
public List<FileModel> GetMyData()
{
var collectedData = _context.MyUploads.AsNoTracking().Where(t =>
t.FirstName == null ||
t.LastName == null ||
t.EmailAddress == null ||
t.Telephone == null)
.Where(t => t.status == 1) // added this line...
.Select(x => _mapper.Map<FileModel>(x))
.ToList();
return collectedData;
}
我有一个方法可以提取具有空值的特定字段。 table 中的每条记录都有一个状态字段 1 或 0。1 是活动的,0 是不活动的。
对于下面的查询,我只想提取活动记录的数据,即 status = 1
如何修改此查询以放入 status = 1 的条件?
public List<FileModel> GetMyData()
{
var collectedData = _context.MyUploads.AsNoTracking().Where(t =>
t.FirstName == null ||
t.LastName == null ||
t.EmailAddress == null ||
t.Telephone == null)
.Select(x => _mapper.Map<FileModel>(x))
.ToList();
return collectedData;
}
您应该可以将 where 条件更改为以下内容
.Where(t => (t.FirstName == null || t.LastName == null || t.EmailAddress == null || t.Telephone == null) && t.status == 1)
&& 的意思是和,所以它表示那些字段为空并且状态等于 1。
您可以一个接一个地链接两个 Where
Linq 扩展方法调用,如下所示:
public List<FileModel> GetMyData()
{
var collectedData = _context.MyUploads.AsNoTracking().Where(t =>
t.FirstName == null ||
t.LastName == null ||
t.EmailAddress == null ||
t.Telephone == null)
.Where(t => t.status == 1) // added this line...
.Select(x => _mapper.Map<FileModel>(x))
.ToList();
return collectedData;
}