使用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)就解决了。

5,查询正常了

