我是EF的新手。 阅读here可以对非实体类型使用SQL查询。
我有这堂课:
Public Class MyNoEntityClass
Public ID As Integer
Public Field1 As Decimal
Public Field2 As Decimal
End Class
我尝试使用dbcontext从数据库加载数据:
Dim aRecords As List(Of MyNoEntityClass) = db.Database
.SqlQuery(Of MyNoEntityClass)("SELECT ID, Field1, Field2 FROM MyTable")
.ToList
用“
”检查元素数量后console.writeline(aRecords.Count)
且值正确,list包含相同的记录号。然后我做
For Each oData As MyNoEntityClass In aRecords
Console.WriteLine(oData.ID)
Console.WriteLine(oData.Field1)
Console.WriteLine(oData.Field2)
Next
并且所有值都为零。
为什么?我哪里错了? 数据库列是MyNoEntityClass的相同类型(ID整数,Field1和Field2十进制)。
感谢您的帮助。
答案 0 :(得分:0)
EF不会将值绑定到公共字段。使它们成为属性
Public Class MyNoEntityClass
Public Property ID As Integer
Public Property Field1 As Decimal
Public Property Field2 As Decimal
End Class