我在表单中有几个过滤器字段,用于构建将填充GridView
的select语句的where表达式。用户还可以为每个字段选择运算符(><> =< = like)。考虑到优点和缺点,我想知道完成这项任务的最佳技术。
我得出了一些结论:
(table.description = isnull(@description, table.description)
,但这不允许我们与多个运算符一起使用。exec('Statement')
。这样我们就可以动态地构建查询,但查询中充满了引号,调试和修改很无聊,不确定性能。专家通常如何做?什么是最好的方法?
答案 0 :(得分:1)
您的上一个陈述不正确。如果使用Entity Framework,您可以使用native或EntityCommand以字符串形式构建查询;除非你测试它,否则没有证据表明它比使用存储过程的性能更差。
我一直在使用以下方法:
<ParameterName, ParameterValue>
)