تبدیل و کپی DataReader به DataTable و DataSet در C#
دوشنبه 21 اردیبهشت 1394در این مقاله به تبدیل و کپی DataReader به DataTable و DataSet در C# خواهیم پرداخت DataTable و DataSet با رکوردها پر میشوند از طریق DataReader با استفاده از متد Load در DataTable
در این مقاله به تبدیل و کپی DataReader به DataTable و DataSet در C# خواهیم پرداخت DataTable و DataSet با رکوردها پر میشوند از طریق DataReader با استفاده از متد Load در DataTable
ابتدا یک جدول در پایگاه داده خود به نام Customers به شکل زیر بسازید:

سپس چند رکورد در آن درج میکنیم :

فضا نام های زیر را به پروژه خود اضافه میکنیم :
using System.Data; using System.Configuration; using System.Data.SqlClient;
تبدیل DataReader به DataTable :
رکوردها از جدول Customer توسط SqlDataReader خوانده میشوند در نهایت یک جدول جدید ایجاد خواهد شد و رکوردهای DataReader درون DataTable توسط متد Load کپی میشوند.
protected void ConvertDataReaderToDataTable(object sender, EventArgs e)
{
string constr = ConfigurationManager.ConnectionStrings["constr"].ConnectionString;
using (SqlConnection con = new SqlConnection(constr))
{
using (SqlCommand cmd = new SqlCommand("SELECT CustomerId, Name, Country FROM Customers"))
{
cmd.Connection = con;
con.Open();
using (SqlDataReader sdr = cmd.ExecuteReader())
{
//Create a new DataTable.
DataTable dtCustomers = new DataTable("Customers");
//Load DataReader into the DataTable.
dtCustomers.Load(sdr);
GridView1.DataSource = dtCustomers;
GridView1.DataBind();
}
con.Close();
}
}
}
تبدیل DataReader به DataSet :
کوردها از جدول Customer توسط SqlDataReader خوانده میشوند سپس یک DataSet جدید ایجاد خواهد شد و یک DataTable به DataSet اضافه میشود در نهایت رکوردهای DataReader درون DataTable از DataSet توسط متد Load کپی میشوند.
protected void ConvertDataReaderToDataSet(object sender, EventArgs e)
{
string constr = ConfigurationManager.ConnectionStrings["constr"].ConnectionString;
using (SqlConnection con = new SqlConnection(constr))
{
using (SqlCommand cmd = new SqlCommand("SELECT CustomerId, Name, Country FROM Customers"))
{
cmd.Connection = con;
con.Open();
using (SqlDataReader sdr = cmd.ExecuteReader())
{
//Create a new DataSet
DataSet dsCustomers = new DataSet();
dsCustomers.Tables.Add("Customers");
//Load DataReader into the DataTable.
dsCustomers.Tables[0].Load(sdr);
GridView1.DataSource = dsCustomers;
GridView1.DataBind();
}
con.Close();
}
}
}

- ASP.net
- 5k بازدید
- 1 تشکر