【发布时间】:2021-08-14 10:14:36
【问题描述】:
我想修改以下程序
public async Task<IActionResult> GetMany(List<int> values)
{
List<TEntity> entities = await _crudApiDbContext.Set<TEntity>()
.Where(entity => values.Contains(entity.Id)).ToListAsync();
return new OkObjectResult(entities);
}
接受将在 Contains 方法中搜索的列名,例如:
public async Task<IActionResult> GetMany(List<int> values, string colName)
{
List<TEntity> entities = await _crudApiDbContext.Set<TEntity>()
.Where(entity => values.Contains<TEntity>(colName)).ToListAsync();
return new OkObjectResult(entities);
}
我尝试过重载 Contains 并使用表达式树,但迷路了...
有什么想法吗?
【问题讨论】:
-
您使用的是什么 LINQ:LINQ to Objects / SQL / EF 6.x / EF Core 2.0 / 2.1 / 3.x / 5.x / 6.x?什么数据库提供商?
标签: c# linq linq-to-sql