我知道该条目在那里,由于#字符而无法使用.我尝试使用[]转义,例如:

productData.Select("Name = 'AAA BBB [#] CCC'");

但它仍然不起作用.我知道单引号会将其加倍,因此变成.但是我还需要关注哪些其他字符以及如何使这种情况起作用.

解决方法:

您是否绝对必须使用这样的DataTables?正是由于这个原因,我一直对DataTable中基于文本的查询感到非常难以置信.

如果有可能,我建议您开始使用LINQ.您已经可以使用DataTable完成此操作,例如

var query = products.AsEnumerable()
                    .Where(row => row.Field<string>("Name") == "AAA BBB # CCC");

这样,您就不必担心转义等问题.如果使用强类型的数据集,它将变得更加简单,因为您可以直接引用属性而不是使用字符串名称.

上一篇:Dire Wolf(区间DP)


下一篇:c#-从.NET 2.0中的DataTable列获取不同的值