Vb.net EF6原始SqlQuery不读取值数据

Vb.net EF6原始SqlQuery不读取值数据,vb.net,entity-framework,Vb.net,Entity Framework,我是EF的新手。 阅读时,可以对非实体类型使用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 .Sq

我是EF的新手。 阅读时,可以对非实体类型使用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)
并且该值正确,列表包含相同的记录编号。那我会的

For Each oData As MyNoEntityClass In aRecords 
    Console.WriteLine(oData.ID)
    Console.WriteLine(oData.Field1)
    Console.WriteLine(oData.Field2)
Next 
所有的值都是零

为什么??我的错在哪里? 数据库列与MyNoEntityClass类型相同(ID integer、Field1和Field2 decimal)


谢谢您的帮助。

EF不会将值绑定到公共字段。把它们变成财产

Public Class MyNoEntityClass
    Public Property ID As Integer
    Public Property Field1 As Decimal
    Public Property Field2 As Decimal
End Class