正如我的倾斜明确提到的那样,我试图用一个带有单引号的过滤器文本来过滤数据表。
我的陈述如下
dgURComments.ItemsSource).ToTable().Select("URComments = '" + txtComments.Text.Trim() + "'");
我怎样才能克服这个?
答案 0 :(得分:1)
而不是摆弄DataTable.Select
我会使用Linq-To-DataSet
:
IEnumerable<DataRow> rows = tbl.AsEnumerable()
.Where(r => r.Field<String>("URComments") == txtComments.Text.Trim());
如果您需要过滤结果中的DataTable,则可以使用CopyToDataTable
DataTable tblFiltered = rows.CopyToDataTable();
最低要求是System.Core.dll
的引用和System.Linq
的using指令。默认情况下,如果您创建新的Visual C#2008项目,则会提供这些项目。 LINQ to DataSet
还需要引用System.Data.dll
和System.Data.DataSetExtensions.dll
以及使用指令。