使用EFCore连接Mysql后查询出现的一次错误和解决方案
使用EFCore连接Mysql后查询出现的一次错误和解决方案
nuget包信息:
Microsoft.EntityFrameworkCore 6.0
Microsoft.EntityFrameworkCore.Design 6.0
Pomelo.EntityFrameworkCore.MySql 6.0.0
使用EFCore语句查询代码
var Result = _db.xxx.OrderBy(c=>c.Id).ToList();
if (Result == null)
return new ResponseModel { Code = 500, Message = "数据查询失败" };
return new ResponseModel { Code = 200, Message = "数据查询成功", Data = Result };
报错信息:
Unable to cast object of type 'System.DBNull' to type 'System.String'
错误分析
这个错误代码猛地一看是数据库类型和实体类型不一致,接收不到数据。但是我又想,我通过Add语法成功添加了数据,所以应该不是实体类型的问题
经过一番搜索,在这篇文章中找到答案,结果只要在实体中允许为空的字段前加?就好
例如:
public string? Remark {get;set;}

浙公网安备 33010602011771号