I am creating dynamic query
for linq
using contains
but I am not getting any results back. Results exists in SQL.
What am I doing wrong here? Since I can have N values for columns, .Contains
should be okay.
Code:
public IAsyncEnumerable<MyTable> GetMyTableRecordsPerFilter(
IReadOnlyList<string> filters, CancellationToken cancellationToken)
{
var queryParams = generateQuery(filters);
var query = _dbContext.Exception.AsNoTracking();
if (queryParams.Result.ContainsKey("Location")) // (COL, NYC)
query = query.Where(x => x.Location.Contains(queryParams.Result["Location"]));
if (queryParams.Result.ContainsKey("StockNumber")) // ('1111150416', '2222250416', '6666650416')
query = query.Where(x => x.StockNumber.ToString().Contains(queryParams.Result["StockNumber"]));
var result = query.AsAsyncEnumerable(); // No results returned
return result;
}
SQL: