我需要编写一个linq语句来编码等级显示按钮,以便它允许用户显示所有记录或只显示与特定等级匹配的记录。还必须计算出一个gpa,其中a=4
,b=3
,c=2
,d=1
,f=0
。我已经改变了代码来实现where子句,但我得到 ,但我得到一个错误 为选项严格禁止从 字符串到布尔值隐式转换任何人都可以给我这个where子句的建议吗?Linq语句为所有条目返回相同的结果
Private Sub btnDisplay_Click(sender As Object, e As EventArgs) Handles btnDisplay.Click
Dim dic As Dictionary(Of String, Integer) = New Dictionary(Of String, Integer)
dic.Add("A", 4)
dic.Add("B", 3)
dic.Add("C", 2)
dic.Add("D", 1)
dic.Add("F", 0)
Dim gpa = Aggregate Grade In CoursesDataSet.tblCourses.AsEnumerable()
Where Grade.Grade = "A" Or "B" Or "C" Or "D" Or "F"
Select Grade.Field(Of Integer)("CreditHours") * dic(Grade.Field(Of String)("Grade"))
Into Sum()
MessageBox.Show("GPa:" & gpa.ToString(CInt("C2")),
"College Courses", MessageBoxButtons.OK,
MessageBoxIcon.Information)
End Sub
末级
![enter image description here][1]
当我尝试这样@Maciej洛杉矶我得到一个无效转换异常错误在SELECT语句 – tammy
什么是确切的错误信息? –
这是一张图片http://i59.tinypic.com/33vybeu.png – tammy