我在linq查询中创建条件有一些问题(在哪里)。基于某些条件创建内部条件。 我想基于两个属性(id_indice_prix,date_indice)过滤Indice列表。我可以过滤它们或只过滤一个。你有什么建议吗? 我现在正在做的是,我从linq到entites获取数据库中的所有行,然后我根据条件进行过滤:
var listeIndiceActualisationPrix = UnitOfWork.Indices_actualisation_prix.ToList();
if (IdIndicePrix != 0)
listeIndiceActualisationPrix = listeIndiceActualisationPrix.Where(x => x.id_indice_prix == IdIndicePrix).ToList();
if(Annee !=0)
listeIndiceActualisationPrix = listeIndiceActualisationPrix.Where(x => x.date_indice.Value.Year == Annee).ToList();
答案 0 :(得分:0)
不要每次都放.ToList()
。当您致电.ToList()
时,将执行查询。在没有.ToList()
的情况下动态构建查询,并在if
语句的末尾执行.ToList()
以使用相应的WHERE
语句查询数据库。