VB.net复制对象(dataview)

时间:2013-09-10 15:44:26

标签: vb.net ado.net

我一直在尝试创建一个对象的副本,但它似乎以某种方式链接。这是一个例子

Dim dataview as DataView = results.DefaultView

' Some amazing foreach loop
' but thoughtout the loop I want to create a copy of the data and then filter it

Dim filterView as DataView = dataview
filterView.RowFilter = "County = '" & loop.County &"'"

然后计划循环遍历这个数据子集,但是当我调试项目时,dataview中包含的数据与filterView相同。我尝试过DirectCast()并且仍然得到相同的结果。如何在不创建原始对象的链接的情况下创建对象的副本?

希望这是有道理的,但如果您需要进一步澄清,请告诉我。

1 个答案:

答案 0 :(得分:2)

使用Clone方法复制表结构(Schema)。 使用ImportRow方法从表复制到其克隆。 要么 您可以使用DataTable对象的Copy方法复制整个DataTable: 要么 从DataView的结果中复制。

http://support.microsoft.com/kb/308909