像这样的事情会严重影响性能吗?多个LinqToSQL查询和性能
var myQuery = from c in Customers select c;
var filter1 = from c in myQuery where c.ID > 2 select c;
myQuery = filter1;
var filter2 = from c in myQuery where c.Name.Contains("r") select c;
myQuery = filter2;
当我这样做时,似乎只做最后的实际查询,而不是每个“var ...”。到目前为止,所有的过滤器似乎只是构造一个查询,所以看起来好像没什么不同,并且在1个查询中放置所有过滤器没有太大的性能差异。我错了,它实际上对数据库运行多个查询?
我想找出一个很好的方法来创建基于用户的输入查询,以便他们可以过滤不同的标准。只要这样做不会花费大量时间,我并不太担心表现。
我也发现了有关Dynamic Linq库的文章,但是使用它看起来很笨重,我没有看到用这种方式做这件事的很多不同。
他能通过迭代filter1和filter 2得到结果吗?我认为它会失败,你只能循环结果一次消息... – 2009-01-26 20:05:46
我还没有尝试过,但我希望它能正常工作 - 过滤器是查询,而不是结果查询。 – 2009-01-26 20:13:06