【发布时间】:2016-04-19 16:58:55
【问题描述】:
我有一个名为 db1104983 的数据库,我使用的是实体框架 6。 我的数据库由一张名为 Student 的表组成。所以我在数据库中的所有条目都是学生。
我正在尝试创建一个函数来计算通过的班级人数。
DB 已经有一个字段 FinalGrade,用于保存每个学生的最终成绩。如果是A-D级则视为及格
我原来有以下
int classSize = context.Students.Count();
int FinalPercentage = passedStudents / classSize * 100;
MessageBox.Show(+FinalPercentage + "% of the class have passed!");
然后在我将新的学生对象添加到数据库之前,我有这段代码
if (s1.FinalGrade == "A")
{
PassedStudents++;
}
else if (s1.FinalGrade == "B")
{
PassedStudents++;
}
else if(s1.FinalGrade =="C")
{
PassedStudents++;
}
else if (s1.FinalGrade == "D")
PassedStudents++;
else
{
//do nothing
}
但是它似乎在我可以使用它之前处理了传递的学生变量,所以我正在尝试执行以下操作
private void displayPercentage(object s1, int passedStudents)
{
using (db1104983Entities1 context = new db1104983Entities1())
{
foreach(Student in context)
if( s1.FinalGrade== "A" || s1.Finalgrade == B || s1.Finalgrade == C
|| s1.FinalGrade == D)
{
passedStudents++
}
else {
//do nothing
}
}
}
但是它给了我各种各样的错误,所以我不确定这是否是正确的做法。任何帮助将不胜感激。
谢谢。
}
}
}
【问题讨论】:
标签: c# wpf foreach entity-framework-6