我想知道是否可以在 datatable.select(expression) 中添加参数。例如
string query="Name=@Name";
//dt is comming from database.
dt.Select(query);
如何添加此参数@Name
。我需要比较一个包含单引号的值,但在上述情况下它失败了。
提前致谢
最佳答案
您可以使用String.Format
,您需要用两个单引号转义:
string query = string.Format("Name='{0}'", name.Replace(@"'", "''"));
var rows = dt.Select(query);
或者,如果你想使用Like
:
string query = string.Format("Name LIKE '%{0}%'", name.Replace(@"'", "''"));
(请注意,DataTable
不易受到 sql 注入(inject)攻击,因为它是内存中的对象)
关于c# - 我们可以在c#中的datatable.select中添加参数吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18535076/