View Full Version : سوال: پر کردن RadioButtonList در Entity Framework
maxpayn2
شنبه 20 اسفند 1390, 15:22 عصر
سلام
توی دیتابیس 2 تا جدول دارم ، یکی متن سوال و یکی گزینه های سوال ، برای ارتباط با دیتابیس از Entity Framework استفاده میکنم ، چهطوری میتونم گزینه های یک سوال مشخص رو توی یه RadioButtonList پر کنم ؟
ممنون
maxpayn2
شنبه 20 اسفند 1390, 19:43 عصر
این کد رو نوشتم ولی جواب نمیده :
ModulesPollsEntities context = new ModulesPollsEntities();
protected void Page_Load(object sender, EventArgs e)
{
Model.Modules_Polls poll = (from p in context.Modules_Polls
where p.PollIsActive == true select p).SingleOrDefault<Model.Modules_Polls>();
List<string> answers = (from answer in context.Modules_Polls_Answers
where answer.PollID == poll.PollID select answer.PollAnswerTitle).ToList();
lblPoll.Text = poll.PollQuestion;
if (poll.PollIsMulti == false)
{
foreach (var item in answers)
{
rblAnswers.Items.Add(new ListItem(item.ToString()));
}
}
}
Ehsan Boorboor
شنبه 20 اسفند 1390, 19:47 عصر
منظورتون اینه که دیتا داره از دو تا جدول میاد ولی LinqDataSource ، کوئری Builder یا چیزی شبیه به اون نداره
باید از رویداد Selecting کامپوننت LinqDataSource استفاده کنید
اونجا می تونید کد بنویسید و در پایان نتیجه را به e.Result پاس دهید.
maxpayn2
یک شنبه 21 اسفند 1390, 09:34 صبح
ممنون
اینجا اصلا هیچ DataSource ای در کار نیست ، در خط هشت اطلاعات از Context که یک Object از Entity ی ModulesPolls هست خونده میشه و در یک List از نوع String به نام answers ذخیره میشه ، سوال اینجا نیست چون در صفحات دیگه به همین طریق اطلاعات رو خونده و اسفاده کردم ، سوال اینجاست که چرا وقتی item های لیست رو به مجموعه ListItem ها RadioButtonList اضافه میکنم هیچ اتفاقی نمی افته ؟
Ehsan Boorboor
یک شنبه 21 اسفند 1390, 13:38 عصر
کد پر کردن RadioButtonList مشکلی نداره پیچیدگی خاصی هم نداره آخه
کد ها رو خط به خط دیباگ کنید ببینید که poll و answers مقادیر مورد نظر شما رو دارند یا نه
maxpayn2
یک شنبه 21 اسفند 1390, 14:53 عصر
آقا ممنون ، حل شد ، مشکل اینقدر ضایع بود که روم نمیشه بگم
Ehsan Boorboor
یک شنبه 21 اسفند 1390, 16:31 عصر
آقا ممنون ، حل شد ، مشکل اینقدر ضایع بود که روم نمیشه بگم
آره از اون سوتی ها که نصف روز آدمو می گیره :بامزه:
maxpayn2
یک شنبه 21 اسفند 1390, 16:52 عصر
بهتره بگم یه روز و نصفی ، مقدار Visible کنترل rblAnswers برابر با False بود ، کد تکمیل شده اینطوری شد :
Model.Modules_Polls poll = (from p in context.Modules_Polls
where p.PollIsActive == true select p).SingleOrDefault<Model.Modules_Polls>();
List<string> answers = (from answer in context.Modules_Polls_Answers
where answer.PollID == poll.PollID select answer.PollAnswerTitle).ToList();
lblPoll.Text = poll.PollQuestion;
if (poll.PollIsMulti == false)
{
foreach (var item in answers)
{
chbAnswers.Visible = false;
rblAnswers.Items.Add(new ListItem(item.ToString()));
rblAnswers.Visible = true;
}
}
if (poll.PollIsMulti == true)
{
foreach (var item in answers)
{
rblAnswers.Visible = false;
chbAnswers.Items.Add(new ListItem(item.ToString()));
chbAnswers.Visible = true;
}
}
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.