11

我想使用 Dapper 执行以下查询,该查询当前不返回预期结果(我认为它必须将 @pName 参数视​​为单引号内的文字文本?):

var q = "SELECT * FROM Users WHERE Name LIKE '@pName%'";

@pName 是我在执行查询时为其赋值的参数。

如果我只是像这样构建 SQL,一切都会奏效:

var q = "SELECT * FROM Users WHERE Name LIKE '" + name + "%'";

..但如果可能的话,我宁愿使用参数。

我正在使用以下代码执行查询:

o = _cn.Query<User>(q, new { pName = new DbString { Value = name, IsFixedLength = false, Length = 25, IsAnsi = true } }).ToList();

我如何使用 Dapper 解决这个问题?

4

1 回答 1

16
SELECT * FROM Users WHERE Name LIKE @pName + '%'
于 2011-09-22T08:55:35.157 回答