C# 记录集到数据集的转换

C# 记录集到数据集的转换,c#,vb6,dataset,recordset,C#,Vb6,Dataset,Recordset,我正在将VB6code转换为C#到目前为止,转换进展顺利,但我只是将Recordset转换为Dataset混淆了。到目前为止,我使用Dataset转换并分配了记录集数据,如下所示 String strData = ds.Tables[0].Rows[0]["Col"].ToString(); //this is in VB6 code rs!Col double d = rs(somestring).Value // before this a select query executed

我正在将
VB6
code转换为
C#
到目前为止,转换进展顺利,但我只是将
Recordset
转换为
Dataset
混淆了。到目前为止,我使用Dataset转换并分配了记录集数据,如下所示

String strData = ds.Tables[0].Rows[0]["Col"].ToString(); 
//this is in VB6 code rs!Col
double d = rs(somestring).Value // before this a select query executed
这个转换正确吗?如果正确,我有一些记录集如下

String strData = ds.Tables[0].Rows[0]["Col"].ToString(); 
//this is in VB6 code rs!Col
double d = rs(somestring).Value // before this a select query executed
如何使用
dataset

double d= double.Parse(ds.Tables[0].Rows[0]["someString"].ToString());
另外
rs.Fields(col)


它是正确的还是其他的?

您可以尝试以下方法:-

ADODB.Connection oConn = new ADODB.Connection();
oConn.Open("Connection String", "", "", 0);
string strQuery = "";//Your select query or the query through which you are fetching data from database";
ADODB.Recordset rs = new ADODB.Recordset();
System.Data.OleDb.OleDbDataAdapter adapter = new System.Data.OleDb.OleDbDataAdapter();
DataTable dt = new DataTable();
rs.Open(strQuery, " Connection String,                ADODB.CursorTypeEnum.adOpenForwardOnly, ADODB.LockTypeEnum.adLockReadOnly, 1);
adapter.Fill(dt, rs);
return dt;

ado.net中记录集最接近的对象是reader。读卡器打开一个仅向前只读光标,并允许您读取记录。记录集和数据集之间有一个基本的区别


数据集在内存中是查询数据的完整副本。在dataset中获取数据后,它不需要连接,而记录集需要连接。如果您不想在结果中前后移动,您应该试试reader。您将能够使用类似的语法从读卡器获取数据

嗨,我需要转换,代码是否与convertedYes一致正确。但是,您可以直接使用toDouble、toInt或toString方法对其进行优化。此外,您还可以获取表中的数据,而不是dataset,这将允许您编写类似tables的代码;看看这个:-