我在我的项目中使用 Dapper。很多时候我需要根据某些变量更改 SQL 查询。
例如:
public override QueryResult Handle(Query query)
{
var sql = "SELECT field FROM table";
if(someModel.IncludeSomething){
// add inner join something + add SELECT something.field
}
if(conditionN){...}
return Connection.Query<QueryResult>(sql, query);
}
您如何在项目中使用动态 SQL 查询?
最佳答案
我遇到过同样的情况,开发带有动态过滤器、分组的自定义仪表板/报告,有时还需要与其他表连接。
由于存储过程方法在这种情况下表现不佳,我开发了自己的库 SqlKata ,一个提供上述要求的动态查询构建器,同时又不牺牲安全性和性能,因为它使用了参数绑定(bind)技术。检查一下,希望对您有所帮助:)
关于c# - c# 代码中的动态 SQL 查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46478764/