How can I make ands
dynamically in where
using Linq and entityFramework?
Thank you in advance for any help.
return _dbContext.TbParceiro
//Preciso fazer algo do tipo mas isso não funciona, não sei como posso fazer aqui.
.Where(p =>
if (!string.IsNullOrEmpty(mdlParceiroFiltro.FiltroId))
{
p.ParceiroId = mdlParceiroFiltro.FiltroId;
}
)
.OrderBy(p => p.ParceiroId)
.Skip(mdlParceiroFiltro.Pula)
.Take(mdlParceiroFiltro.Pega)
.ToList();
Below is an example that works using string command, I need to do the same thing with Linq.
sql.Append("SELECT u.Id, u.Nome, u.Usuario ");
sql.Append("FROM usuario u ");
sql.Append("WHERE 1 = 1 ");
if (model != null)
{
if (!string.IsNullOrEmpty(model.Nome))
{
sql.Append("AND u.Nome like @Nome ");
lstParametros.Add(new MySqlParameter() {
ParameterName = "@Nome",
MySqlDbType = MySqlDbType.String,
Value = "%" + model.Nome + "%"
});
}
if (!string.IsNullOrEmpty(model.Usuario))
{
sql.Append("AND u.Usuario like @Usuario ");
lstParametros.Add(new MySqlParameter()
{
ParameterName = "@Usuario",
MySqlDbType = MySqlDbType.String,
Value = "%" +
model.Usuario + "%"
});
}
}