首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >c#如何从sqldatareader返回数据集?

c#如何从sqldatareader返回数据集?
EN

Stack Overflow用户
提问于 2010-11-05 01:55:20
回答 6查看 94.9K关注 0票数 24

我在公开课上有这样的例子:

代码语言:javascript
复制
SqlConnection myConnection = new SqlConnection("Data Source=hermes;database=qcvalues; Integrated Security=SSPI;");
myConnection.Open();
SqlDataReader myReader = null;
SqlCommand myCommand = new SqlCommand(InitializeQuery(), myConnection);
myReader = myCommand.ExecuteReader();

我需要一个控件的数据源来从myReader获取数据集。

不幸的是,这很难做到,因为控件在一个窗体上(一个单独的类)。如何将myReader dataset返回到窗体上控件的datasource属性中?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2010-11-05 01:59:33

您不需要。请使用DataAdapter:

代码语言:javascript
复制
var ds = new DataSet();

using(var conn = new SqlConnection(connString))
{
    conn.Open();
    var command = new SqlCommand(InitializeQuery(), conn);
    var adapter = new SqlDataAdapter(command);

    adapter.Fill(ds);
}
票数 44
EN

Stack Overflow用户

发布于 2010-11-05 01:59:28

如果您可以使用DataAdapter子类或使用以下内容:

代码语言:javascript
复制
DataTable myTable = new DataTable();

myTable.Load(myCommand.ExecuteReader());

然后将DataTable返回给客户端。

票数 24
EN

Stack Overflow用户

发布于 2017-06-01 17:53:32

代码语言:javascript
复制
IDataReader reader;
DataSet ds;

while (!reader.IsClosed)
   ds.Tables.Add().Load(reader);
票数 14
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4099652

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档