DB2 使用EF Core 查询数据 报错 Object reference not set to an instance of an object.

代码:

           using (var db = base.ContextSort)
            {
                var a =await db.VSupplementRecords.ToListAsync();
                return a;
            }

 

原因:

由于查询的结果中存在为空的字段而与转换对象VSupplementRecords中对应字段不是可空的,造成了一个数据类型转换的问题。

查找问题的历程:

创建一个demo 使用IBM.EntityFrameworkCore 来连接数据库查询

发现错误的异常为:

DB2 使用EF Core 查询数据 报错 Object reference not set to an instance of an object.

 

 

 明显是一个数据强制装换的问题,如下的详细错误中提示是一个decimal类型的数据造成的,此时就讲对象的字段与数据库的字段比对是哪一个decimal类型的字段转换失败,对比可空、类型等等

最后发现是一个decimal类型的非空字段在数据库中是可空的(查出的数据中存在可空的数据)

DB2 使用EF Core 查询数据 报错 Object reference not set to an instance of an object.

 

DB2 使用EF Core 查询数据 报错 Object reference not set to an instance of an object.

上一篇:如何用python查询mysql乱码问题?


下一篇:Mysql数据库值的添加、修改、删除及清空