我是Linq到Sql的新手,正在尝试在C#中执行以下操作。
我有一个表,它是键/值存储(对用户也有fk)。我想对键名称和值进行搜索(或)。在前端,我允许他们添加作为键名的“过滤器”,然后他们可以搜索值。因此他们可以搜索N个项目,其中N是过滤器的数量。
在普通sql中,N = 3,它看起来像下面的样子。 datakey和datavalue是表中的列(varchar(255))。
SELECT * from table
where (datakey='option1' and datavalue='value1')
or (datakey='option2' and datavalue='value2')
or (datakey='option3' and datavalue='value3')
最佳答案
有一种叫做DynamicQuery的技术,它可以让您通过字符串建立LINQ表达式,这可能会有所帮助