PDA

View Full Version : سوال: اضافه کردن چند رکورد بصورت همزمان با حلقه در بانک اطلاعاتی(LINQ)



ashkan1234
پنج شنبه 21 شهریور 1392, 13:51 عصر
سلام!:لبخند:
10تا چک باکس دارم و یک دکمه!
حالا میخوام با کلیک روی دکمه 10 تا رکورد بشینه تو بانک که کدوم چک باکس True کدوم False
با حلقه چجوری میشه اینکارو کرد؟؟؟!!:متفکر:
به روش LINQ:کف:

khokhan
پنج شنبه 21 شهریور 1392, 13:59 عصر
سلام!:لبخند:
10تا چک باکس دارم و یک دکمه!
حالا میخوام با کلیک روی دکمه 10 تا رکورد بشینه تو بانک که کدوم چک باکس True کدوم False
با حلقه چجوری میشه اینکارو کرد؟؟؟!!:متفکر:
به روش LINQ:کف:
................................................

foreach (Control c in groupBox1.Controls)
{
CheckBox checkbox = c as CheckBox;
if (checkbox != null)
{
if (checkbox.Checked)
{
//do something
}
}
}

ashkan1234
پنج شنبه 21 شهریور 1392, 14:07 عصر
................................................

foreach (Control c in groupBox1.Controls)
{
CheckBox checkbox = c as CheckBox;
if (checkbox != null)
{
if (checkbox.Checked)
{
//do something
}
}
}

نقطه های متوالیت تو حلقم خوخان خان...:لبخند:
خوب شما بفرمایید اونایی که چک نشدن با این کد مقدار False در دیتا بیس براشون ذخیره میشود؟؟عایا؟؟:لبخند:

صباح فتحی
پنج شنبه 21 شهریور 1392, 14:08 عصر
تولیست بربز بعد لیستو اضافه کن بانک

khokhan
پنج شنبه 21 شهریور 1392, 14:13 عصر
نقطه های متوالیت تو حلقم خوخان خان...:لبخند:
خوب شما بفرمایید اونایی که چک نشدن با این کد مقدار False در دیتا بیس براشون ذخیره میشود؟؟عایا؟؟:لبخند:
عزیز اگه نوع فیلد توی دیتابیس bit باشه حله
البته می تونی یه کار دیگه هم بکنی
اگر مقدار همه چک باکسها توی یه فیلد قراره ذخیره بشه می تونی یه متد برای ایجاد رشته ایجاد کنی ودر رویداد کلیک باتن اون رشته رو فراخوانی کنی :


private void button1_Click(object sender, EventArgs e)
{
string sTemp = CheckItemValues(this.panel1);
string sSQL="INSERT INTO table(Field) Values('"+sTemp + "')";
//
//rest of your code
//
}

public string CheckItemValues(Control parent)
{
string sString = null;

foreach (Control ctl in parent.Controls)
{
if (ctl.Controls.Count > 0) CheckItemValues(ctl);
if (ctl is CheckBox)
{
CheckBox chk = (CheckBox)ctl;
if (chk.Checked == true)
{
sString += chk.Text + ",";
}
}
}
return sString;

ashkan1234
پنج شنبه 21 شهریور 1392, 14:14 عصر
تولیست بربز بعد لیستو اضافه کن بانک

لطفا اطلاعات تکمیلی تر بفرمایید!
چجوری بلادل؟

ashkan1234
پنج شنبه 21 شهریور 1392, 15:14 عصر
بدون درد و خونریزی انجام شد!
کدهارو قرار میدم اگر کسی بدرد من دچار شد با یک خط کد همچی حلللللللهههه...
using (var db=new linqDataContext())
{
foreach (CheckBox chk in groupBox1.Controls)
{
tbl_UserB usrB = new tbl_UserB()
{
ACS_USR_Id = (int)cmbUsername.SelectedValue,
ACS_IsOn = chk.Checked

};
db.tbl_UserB.InsertOnSubmit(usrB);
db.SubmitChanges();
}
MessageBox.Show("Save Complete");

}

ashkan1234
پنج شنبه 21 شهریور 1392, 16:05 عصر
حالا یه مشکل دیگه:
یه فیلد chk_value دارم تو ی دیتابیس از نوع int
میخوام به هر چک باکس یه مقدار اختصاص بدم!
مثلا چک باکس 1 مقدار 1
چک باکس 2 مقدار 2
و...
واسه اینکه بدونم این مقدار true یا false ماله کدوم چک باکسه!
حتما هم میخوام نوعش عددی باشه int
در واقع به کد زیر نگاه کنید ببینید جای علامت سوال چی بزارم؟
using (var db=new linqDataContext())
{
foreach (CheckBox chk in groupBox1.Controls)
{
tbl_UserB usrB = new tbl_UserB()
{
ACS_USR_Id = (int)cmbUsername.SelectedValue,
ACS_IsOn = chk.Checked,
ACS_CHKValue = ??
};
db.tbl_UserB.InsertOnSubmit(usracs);
db.SubmitChanges();
}
MessageBox.Show("Save Complete");

}

khokhan
پنج شنبه 21 شهریور 1392, 17:03 عصر
حالا یه مشکل دیگه:
یه فیلد chk_value دارم تو ی دیتابیس از نوع int
میخوام به هر چک باکس یه مقدار اختصاص بدم!
مثلا چک باکس 1 مقدار 1
چک باکس 2 مقدار 2
و...
واسه اینکه بدونم این مقدار true یا false ماله کدوم چک باکسه!
حتما هم میخوام نوعش عددی باشه int
در واقع به کد زیر نگاه کنید ببینید جای علامت سوال چی بزارم؟
using (var db=new linqDataContext())
{
foreach (CheckBox chk in groupBox1.Controls)
{
tbl_UserB usrB = new tbl_UserB()
{
ACS_USR_Id = (int)cmbUsername.SelectedValue,
ACS_IsOn = chk.Checked,
ACS_CHKValue = ??
};
db.tbl_UserB.InsertOnSubmit(usracs);
db.SubmitChanges();
}
MessageBox.Show("Save Complete");

}



int checkBoxVal;if (CheckBoxShow.Checked)

{

checkBoxVal = 1;

}

else

{

checkBoxVal = 0;

}

ashkan1234
پنج شنبه 21 شهریور 1392, 20:05 عصر
int checkBoxVal;if (CheckBoxShow.Checked)

{

checkBoxVal = 1;

}

else

{

checkBoxVal = 0;

}

بلادل تشکر...
ولی این که شما فرمودید مقدار true یا false یک چک باکس رو چک میکنه!
من میخوام به هر چک باکس یه آی دی اختصاص بدم