我有例如桌车
table cars(
producer varchar(30),
model varchar(30),
price integer,
start datetime,
end datetime)
我需要使用标准从表中返回数据(基于一个标准,或者两个或全部标准)。有没有办法动态创建linq问题(只有一个linq查询,而不是为所有组合创建不同的linq查询)?我可以使用一些默认值,搜索总是购买所有,但当我需要搜索一个或没有时,这会降低我的性能。
答案 0 :(得分:0)
简短的回答是肯定的。
您可以从Dynamic LINQ Where Extension 开始启动并运行,但需要一些增强功能来处理DateTimes。
我将上述内容与循环结合使用来处理多个标准:
var q = from c in db.Cars select c;
filters.ForEach (filter =>
{
q = q.Where (filter.Field, filter.Value, filter.Comparison);
});