PDA

View Full Version : سوال: چطوری می شه نوع var را به دیتا تیبل تبدیل کرد؟



javad_r_85
یک شنبه 07 فروردین 1390, 18:49 عصر
سلام.
چطوری می شه نوع var را به دیتا تیبل تبدیل کرد؟؟؟؟؟

mehdi.mousavi
یک شنبه 07 فروردین 1390, 19:13 عصر
سلام.
حدس میزنم شما از LINQ to SQL استفاده کرده اید و جای تعریف دقیق Data Type بازگشتی، از var استفاده کرده اید. حالا میخواهید اون var رو به DataTable تبدیل کنید و ... اگر این حدس درست باشه، باید خدمتتون عرض کنم که var یک Data Type نیست و در شرایط شما، (احتمالا) یک IEnumerable<DataRow> (یا Data Type مشابهی) هستش... اگر فرض کنم که Data Type بازگشتی (یعنی همون var) در حقیقت یک IEnumerable<DataRow> باشه، میتونید با استفاده از CopyToDataTable به DataTable مورد نظرتون برسید. برای مشاهده مثال لطفا به این آدرس رجوع کنید (http://msdn.microsoft.com/en-us/library/bb386921.aspx#Y686).

موفق باشید.

javad_r_85
دوشنبه 08 فروردین 1390, 01:19 صبح
سلام .
مشکل اینجاست که از var نمی شه برای نوع برگشتی متد استفاده کرد و برای این کار دیتاتیبل استفاده کردم
من می خوام با استفاده از linq to entity داده های جدول را بر گردونم و به لینک شما نیز رجوع کردم ولی برای من جوابگو نبود از کد زیر نیز استفاده کردم ولی بازم جواب نداد




public DataTable GetUsers()
{
DataTable dt = new DataTable() ;
var user=from u in objLib.Users select u ;


foreach (var item in user)
{
DataRow dr = dt.NewRow();
dr["Users_Adrress"] = item.Users_Adrress.Single();
dr["Users_Code"] = item.Users_Code;
dr["Users_CodeMeli"] = item.Users_CodeMeli;
dr["Users_DateExpire"] = item.Users_DateExpire;
dr["Users_DateMember"] = item.Users_DateMember;

dt.Rows.Add(dr);
}
return dt;
}

epsi1on
دوشنبه 08 فروردین 1390, 01:41 صبح
سلام .
مشکل اینجاست که از var نمی شه برای نوع برگشتی متد استفاده کرد و برای این کار دیتاتیبل استفاده کردم
من می خوام با استفاده از linq to entity داده های جدول را بر گردونم و به لینک شما نیز رجوع کردم ولی برای من جوابگو نبود از کد زیر نیز استفاده کردم ولی بازم جواب نداد


سلام دوست من.
اصولا فقط دو جا میتونیم از کلمه کلیدی var استفاده کنیم. یکی برای تعریف anonymous type ها هست. یک هم برای Implicit تعریف کردن متغیرهای محلی. شما کدوم یکی از این استفاده ها رو کردید/ میخواید ازش بکنید که به مشکل میخورید؟
به نظرم اگر Sourceتون رو بزارید مساله واضح تر میشه.

mehdi.mousavi
دوشنبه 08 فروردین 1390, 11:40 صبح
سلام. مشکل اینجاست که از var نمی شه برای نوع برگشتی متد استفاده کرد و برای این کار دیتاتیبل استفاده کردم.

سلام.
فقط به این دلیل که نتونستید var رو بعنوان مقدار بازگشتی تابع تعریف کنید، از DataTable استفاده کردید؟
اگر اینطوره، می تونید بدین شکل عمل کنید تا دیگه نیازی به ایجاد یک DataTable نیز نباشه:


public List<User> GetUsers()
{
IQueryable<User> users = from u in objLib.Users select u;
return users.ToList();
}

موفق باشید.