C#-使用SqlSugar操作数据库导致的问题:托管调试助手“FatalExecutionEngineError”:运行时遇到了 错误。此错误的地址为。。。。
使用SqlSugar操作数据一定要注意:
对象的属性类型和数据库的字段类型要保持一致
对象的属性类型和数据库的字段类型要保持一致
对象的属性类型和数据库的字段类型要保持一致
本人基础太差了,这个小问题我从下午2点一致排错了23:00,终于解决了。
1,SqlSugar操作数据的代码
public class TighteningResultService
{
///
/// 插入一条记录
///
/// 日志记录对象
/// 是否成功
public static bool AddTighteningResult(TighteningResult data)
{
return SqlSugarHelper.SqlSugarClient.Insertable(data).ExecuteCommand() == 1;
}
///
/// 根据条件查询
///
/// 开始时间
/// 结束时间
/// 条码
/// 拧紧状态
///
public static List GetTighteningResultByCondiiton(string start, string end, string productSN, string tighteningStatus)
{
//根据时间查询
var query = SqlSugarHelper.SqlSugarClient.Queryable()
.Where(c => SqlFunc.Between(c.ResultDataTime, start, end));
//条码
if (productSN.Length > 0)
{
query.Where(c => c.ProductSN == productSN);
}
//拧紧状态
if (tighteningStatus.Length > 0)
{
query.Where(c => c.TighteningStatus == tighteningStatus);
}
var list =query.ToList();
return query.ToList();
}
}
2,报错如下:
3,找错过程,刚开始不知道哪里的问题
【3.1】最终找到是这里引用的报错:查询的结果赋值给dgv
【3.2】打印测试查询到的对象集合内容,又出现新的报错了。
【3.3】又进一步往上找错,查询到的数据看不到对象属性
4,终于找到了原因,是对象的属性类型和数据库的字段类型不一致导致的
解决办法:把real改到char(8)就解决了。