ایجاد datatable یا dataset از کوئری linq
با سلام
از دوستان کسی هست بدونه چطور میشه یک کوئری که با لینک درست شده رو به دیتا تیبل یا دیتا ست تبدیل کنم تو سایت چند با مطرح شده ولی به جواب درستی نرسید
مثلا کوئری زیر رو میخام به دیتا تیبل تبدیل کنم
Var Search=db.Book.select(p=>p)
Datatable dt=new Datatable();
نقل قول: ایجاد دیتا تیبل یا دیتا ست از کوئری linq
نقل قول:
نوشته شده توسط
mahsa.admin
با سلام
از دوستان کسی هست بدونه چطور میشه یک کوئری که با لینک درست شده رو به دیتا تیبل یا دیتا ست تبدیل کنم تو سایت چند با مطرح شده ولی به جواب درستی نرسید
مثلا کوئری زیر رو میخام به دیتا تیبل تبدیل کنم
Var Search=db.Book.select(p=>p)
Datatable dt=new Datatable();
...........................................
public DataTable ToDataTable(System.Data.Linq.DataContext ctx, object query)
{
if (query == null)
{
throw new ArgumentNullException("query");
}
IDbCommand cmd = ctx.GetCommand(query as IQueryable);
SqlDataAdapter adapter = new SqlDataAdapter();
adapter.SelectCommand = (SqlCommand)cmd;
DataTable dt = new DataTable("sd");
try
{
cmd.Connection.Open();
adapter.FillSchema(dt, SchemaType.Source);
adapter.Fill(dt);
}
finally
{
cmd.Connection.Close();
}
return dt;
}
1 ضمیمه
نقل قول: ایجاد دیتا تیبل یا دیتا ست از کوئری linq
با تشکر از پاسخ شما
در این کلاس در یکی از آرگومان System.Data.Linq.DataContext باید یک رفرنس اد کنی که نمیدونم چیه از طرفی بازگشت به ado.net میشه یجورایی این کلاس.....
+++++++++++++++++++++++++++++++++++++++
حالا من از قبل بارها دیدم که ازروشزیر استفاده شده که درآن CopyToDataTable برام مبهم بود که کلاسی که ساخته شده یا آماده خوده فریم ورک بود تا جایی که متوجه شدم اگر از کتابخانه using System.Data.DataSetExtensions; را اد کنم مشکل حل میشود مسئله ای که هست وقتی این رفرنس را اد واستفاده میکنم خطایی مانند شکل ضمیمه دارم
Var Search=db.Book.select(p=>p)
()DataTable dt = new DataTable
()dt = search1.CopyToDataTable