我想在 C# 中迁移一个 vb6 代码,我的问题是:如果RecordSet.bookmark
在 DataSet C# 中有一个等价物
等效的VB6代码:
pos = rsADO.Bookmark
rsADO 是 ADODB.Recordset 类型
不可以。但是您可以通过其他方式获得相同的结果。
ADO 记录集是所谓的“光标”。他们有一个“当前记录”,以及将当前记录设置为表顶部、下一个、最后一个和先前记录的方法。
数据集(以及在 C# 中访问结构数据的大多数其他方式)不是游标。尤其是 DataSet,本质上是内存中的数组,因此 DataSet 中没有“当前记录”之类的东西,也没有 Bookmark 的等价物。
但是,您可以引用行对象并保存它。例如,类似:
DataRow row = myDataset.Tables[0].Rows[15];
这与持有 ADO 书签的效果相同。使用引用对该特定行进行操作。