我有一个查询应该包含文字 at 符号 (@
)。我如何用 Dapper 查询来表达这一点?
var num = cnx.Query<int>("declare @foo int = 2; select @foo").Single();
我尝试过使用文字作为解决方法:
var num = cnx.Query<int>(
"declare {=at}foo int = 2; select {=at}foo", new { at = "@" }
).Single();
但这引发了NotSupportedException
因为不支持字符串文字...
(请注意,在我的真实代码中,我实际上确实想要替换并自动转义其他 @parameters,因此如果可能的话,我宁愿坚持使用 Dapper,而不是仅使用原始SqlCommand
.)
哦。我想到了。如果你有一个@param
实际上并不绑定到任何东西,它按原样传递给底层SqlCommand
,它将它直接传递到数据库。
换句话说,您无需执行任何特殊操作即可使其正常工作。我的第一个例子应该运行良好。愚蠢的我。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)