使用SqlSugar操作数据一定要注意:
对象的属性类型和数据库的字段类型要保持一致
对象的属性类型和数据库的字段类型要保持一致
对象的属性类型和数据库的字段类型要保持一致
本人基础太差了,这个小问题我从下午2点一致排错了23:00,终于解决了。
1,SqlSugar操作数据的代码
public class TighteningResultService { /// <summary> /// 插入一条记录 /// </summary> /// <param name="log">日志记录对象</param> /// <returns>是否成功</returns> public static bool AddTighteningResult(TighteningResult data) { return SqlSugarHelper.SqlSugarClient.Insertable(data).ExecuteCommand() == 1; } /// <summary> /// 根据条件查询 /// </summary> /// <param name="start">开始时间</param> /// <param name="end">结束时间</param> /// <param name="productSN">条码</param> /// <param name="tighteningStatus">拧紧状态</param> /// <returns></returns> public static List<TighteningResult> GetTighteningResultByCondiiton(string start, string end, string productSN, string tighteningStatus) { //根据时间查询 var query = SqlSugarHelper.SqlSugarClient.Queryable<TighteningResult>() .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)就解决了。