日期:2014-05-18  浏览次数:20805 次

关于datatable的用法
从数据库读出一个表,名字myDT,想用其Select()方法进行筛选,然后给结果作为dataGridView的数据源,类似下面的写法错误,错哪里了呢?

this.myDataGridView.DataSource=myDT.Select("memberID = '20'", "memberID");

另外,datatable的CopyToDataTable用法是什么呢?
如下:
myDT.Select("memberID = '20'", "memberID").CopyToDataTable<这里我不知道写啥,提示是泛型,但是不理解>;

------解决方案--------------------
myDT.Select("memberID='20'")
就可以了
------解决方案--------------------
this.myDataGridView.DataSource=myDT.Select("memberID = '20'", "memberID");
Select方法只放过滤条件,你的memberID什么类型?是整型?还是字符型?如果整型myDT.Select("memberID = 20");
如果是字符型
myDT.Select("memberID = '20'");
select方法返回的是DataRow对象的数组
另外datatable只有Copy方法,没有CopyToDataTable方法
CopyToDataTable的用法看MSDNhttp://msdn.microsoft.com/zh-cn/library/bb396189(v=VS.90).aspx

------解决方案--------------------
myDT.Select("memberID='20'")
或者 myDT.Select("memberID=20")
字符型的直接用数字查也可以。。
------解决方案--------------------
myDT.Select("memberID = '20'")就行了。

如果memberID是整型数,那就
myDT.Select("memberID = 20")。
------解决方案--------------------
DataTable newDT=myDT.Copy();
foreach(DataRow dr in myDT.Select())
{
newDT.ImportRow(dr);
}

CopyToDataTable这方法是新版本的吧,没用过

就过三句话加两个标点,给你弄一个新DataTable,应该可以实现你的想法了吧.


------解决方案--------------------
设置DefaultView的RowFilter属性,然后ToTable得到新的DataTable,绑定GridView
------解决方案--------------------
探讨
myDT.Select("memberID = '20'")就行了。

如果memberID是整型数,那就
myDT.Select("memberID = 20")。