0

我使用 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

任何想法?

4

2 回答 2

0

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

using (var db = new DbManager("DemoConnection")){
    var data = db
        .SetCommand("SELECT * FROM dbo.Table1 WHERE Id = 101671702")
        .ExecuteList<Table1>();
}
于 2014-04-03T07:44:21.760 回答
0

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

于 2014-03-21T08:48:00.037 回答