Estou tentando buscar os registros do banco de dados onde qualquer parâmetro pode ser nulo ou vazio, é isso que tenho, mas não me dá o resultado correto. Dos cinco parâmetros, qualquer um pode ser nulo, mas um deve ter valor.
public async Task<IEnumerable<SomeTable>> GetByCondition(string param1, string param2, string param3, string param4, int param5)
{
var data = await _dataContext.SomeTable.Where(a => a.param1 == (string.IsNullOrEmpty(param1) ? "" : param1)
&& a.param2 == (string.IsNullOrEmpty(param2) ? "" : param2)
&& a.param3 == (string.IsNullOrEmpty(param3) ? "" : param3)
&& a.param4 == (string.IsNullOrEmpty(param4) ? "" : param4)
&& a.param5 == (param5 == 0 ? 0 : param5)).ToListAsync();
return data;
}