PDA

View Full Version : نحوه استفاده از between در LINQ



Yanehsar
یک شنبه 23 تیر 1392, 17:49 عصر
سلام میخوام بین دو بازه تاریخی(اول برج تا انتهای برج)اطلاعات رو استخراج کنم و به کاربر نمایش بدم در روش َADO داخل عبارات SQL از between استفاده می کردیم اما داخل LINQ باید چیکار کنیم ؟ممنون میشم راهنمائیم کنید .
مرسی

erfan_urchin
یک شنبه 23 تیر 1392, 18:19 عصر
سلام
شما میتونی با استفاده از where این کارو انجام بدین مثلا یه همچین چیزی
DataContext db = new DataContext("Data Source=.;Initial Catalog=db2;Integrated Security=True");
Table<data> t1 = db.GetTable<data>();
var q1 = from index in t1 where index.Date > 2012-05-10 && index.Date < 2012-05-25 select index;

Yanehsar
یک شنبه 23 تیر 1392, 18:26 عصر
سلام
شما میتونی با استفاده از where این کارو انجام بدین مثلا یه همچین چیزی
DataContext db = new DataContext("Data Source=.;Initial Catalog=db2;Integrated Security=True");
Table<data> t1 = db.GetTable<data>();
var q1 = from index in t1 where index.Date > 2012-05-10 && index.Date < 2012-05-25 select index;
مرسی از کمکتون
یه مشکل دیگه دارم که تایپک هم زدم به جواب نرسیدم
می خوام از بین ده فیلدی که داخل جدول دارم یکی رو ویرایش کنم چطوری باید این کار رو انجام بدم ؟مثلا تمام رکورد های که در تاریخ 1392.4.18 ثبت شده اند مقدار فیلد X رو برابر با 1 قرار بده .

erfan_urchin
یک شنبه 23 تیر 1392, 18:43 عصر
اگه میخواین از LINQ برین یه راهی داره که اگه یه دونه از اون فیلد وجود داشته باشه یا چند تا همه رو عوض میکنه
مثلا میخواین بگین رکوردی که آیدیش مساوی 3 هستش فیلد Age رو بکن 23
میاد همه رکوردهارو که آیدیش 3 هست رو Age رو میکنه 23
var q1 = from index in t1 where index.ID == 3 select index;
foreach (var i in q1)
i.Age = 23;
db.SubmitChanges();

Yanehsar
یک شنبه 23 تیر 1392, 18:55 عصر
اگه میخواین از LINQ برین یه راهی داره که اگه یه دونه از اون فیلد وجود داشته باشه یا چند تا همه رو عوض میکنه
مثلا میخواین بگین رکوردی که آیدیش مساوی 3 هستش فیلد Age رو بکن 23
میاد همه رکوردهارو که آیدیش 3 هست رو Age رو میکنه 23
var q1 = from index in t1 where index.ID == 3 select index;
foreach (var i in q1)
i.Age = 23;
db.SubmitChanges();
مرسی دقیقه همون کاریه که می خوام انجام بدم فقط اون SubmitChanges که شما استفاده کردید چیه ؟پروسیجر هستش؟

erfan_urchin
یک شنبه 23 تیر 1392, 19:12 عصر
مرسی دقیقه همون کاریه که می خوام انجام بدم فقط اون SubmitChanges که شما استفاده کردید چیه ؟پروسیجر هستش؟
نه
شما وقتی آپدیت میکنی جدولو، آخرش باید اون آپدیت رو ثبت کنی وگرنه دوباره برمیگرده به حالت اول
به خاطر همین باید از متد SubmitChange استفاده کنی
همینطور که وقتی میخوای یه چیزی به جدول اضافه کنی آخرش باید بنویسی
t1.InsertOnSubmit(d);
db.SubmitChanges();
یا اگه میخوای یه چیزیو از جدول توسط LINQ پاک کنی آخرش باید بنویسی
t1.DeleteOnSubmit(d);
db.SubmitChanges();
d همون شی ساخته شده از کلاس محتویات جدول هستش
اگه سوالی هست در خدمتم