强制blToolkit插入参数

时间:2014-03-20 14:40:48

标签: sql string parameters compilation bltoolkit

我使用BlToolkit并希望它不在最终编译的查询中使用参数。

实施例: 它编译的查询:

--  Sql MsSql2005
-- DECLARE @p1 Int64
-- SET @p1 = 101671702

SELECT * FROM dbo.Table1 WHERE Id = @p1

但是我希望它像这样编译:

--  Sql MsSql2005

SELECT * FROM dbo.Table1 WHERE Id = 101671702

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

BLToolkit仅在通过调试信息获取编译查询时显示注释参数。如果您打开SQL Server Profiler并看到正在执行的查询,那么这些参数不存在。所以我认为你对执行计划没问题。

答案 1 :(得分:0)

如果您确切知道要执行的SQL,则应使用SetCommand然后直接执行SQL,如下所示:

using (var db = new DbManager("DemoConnection")){
    var data = db
        .SetCommand("SELECT * FROM dbo.Table1 WHERE Id = 101671702")
        .ExecuteList<Table1>();
}