使用数据库和C#
我的数据库中有一个表格问题和答案,现在我需要用自己的答案逐个提取每个问题,然后按“下一步”按钮转到第二个问题使用数据库和C#,c#,database,C#,Database,我的数据库中有一个表格问题和答案,现在我需要用自己的答案逐个提取每个问题,然后按“下一步”按钮转到第二个问题 { public partial class TakeTest : Form { public static User CurrentUser { get; set; } private DataService dataService; private List<Category> categories; private
{
public partial class TakeTest : Form
{
public static User CurrentUser { get; set; }
private DataService dataService;
private List<Category> categories;
private List<Exam> tests;
// private List<Question> questions;
private Dictionary<Question, List<Answer>> qa;
public TakeTest()
{
InitializeComponent();
dataService = new DataService();
}
private void TakeTest_Load(object sender, EventArgs e)
{
// category
categories = dataService.GetCategories();
if (categories.Count > 0)
{
cmbSelCategory.Items.AddRange(categories.ToArray());
cmbSelCategory.SelectedIndex = 0;
}
}
private void cmbSelCategory_SelectedIndexChanged(object sender, EventArgs e)
{
Category selectedCategory = (Category)cmbSelCategory.SelectedItem;
tests = dataService.GetTests(selectedCategory.Id);
cmbSelTest.Items.Clear();
if (tests.Count > 0)
{
cmbSelTest.Items.AddRange(tests.ToArray());
cmbSelTest.SelectedIndex = 0;
}
}
{
公共部分课程考试:表格
{
公共静态用户CurrentUser{get;set;}
私有数据服务数据服务;
私人名单类别;
私人列表测试;
//私人名单问题;
私人词典;
公考
{
初始化组件();
dataService=新的dataService();
}
私有void TakeTest_加载(对象发送方,事件参数e)
{
//类别
categories=dataService.GetCategories();
如果(categories.Count>0)
{
cmbSelCategory.Items.AddRange(categories.ToArray());
cmbSelCategory.SelectedIndex=0;
}
}
私有无效cmbSelCategory\u SelectedIndexChanged(对象发送方,事件参数e)
{
类别selectedCategory=(类别)cmbSelCategory.SelectedItem;
tests=dataService.GetTests(selectedCategory.Id);
cmbSelTest.Items.Clear();
如果(tests.Count>0)
{
cmbSelTest.Items.AddRange(tests.ToArray());
cmbSelTest.SelectedIndex=0;
}
}
这就是我填写类别和测试的方式
问题:使用字典中的“问题,列出“答案”是一个好主意吗?或者我怎么做呢?您似乎已经有了一个
问题
类。为什么不在该类中添加一个答案
属性,并填充问题详细信息和所有答案。然后您可以创建一个列表
,您可以从头开始进行迭代直到最后
迭代字典
比迭代列表
更难
准确地说,更仔细地看你的代码,你似乎也有一个
考试
类-这可能包含一个问题
列表,每个问题
可能包含一个答案
列表。你似乎已经有了一个问题
类。为什么不在该类中添加一个答案
属性呢nd填充问题详细信息和所有答案。然后您可以创建一个列表
,您可以从头到尾进行迭代
迭代字典
比迭代列表
更难
实际上,更仔细地看你的代码,你似乎还有一门
考试
课-这可能包含一系列问题
s,每个问题
可能包含一系列答案
s。嗨,我看不到你的图像(因为我正在工作)但是假设你的问题是唯一的,那么将它们存储在字典中就可以了。这会将一个问题与答案列表联系起来。我看不到你的图片(因为我在工作)但是假设你的问题是唯一的,那么把它们存储在字典里就可以了。这会把一个问题和一个答案列表联系起来。我把这个列表用在其他地方…所以我可以在这里用它来…我还想知道你写了什么…我只是想看看有什么更好“事实上,更仔细地看你的代码,你似乎也有一门考试课——这可能包含一个问题列表,每个问题都可能包含一个答案列表。“-是的,这就是我的想法:)我在其他地方使用了这个列表…所以我可以在这里使用它…我也在思考你写的东西…我只是想看看有什么更好“准确地说,更仔细地看你的代码,你似乎也有一个考试班-这可能包含一个问题列表,每个问题可能包含一个答案列表。”-是的,这就是想法:)