c# System.Data.SqlClient.SqlException: ‘The multi-part identifier “C.Inspect_Id“ could not be bound.

今天在使用sqlsugar查询数据库信息的时候出现了以下这个问题:

在这里插入图片描述

异常显示C.Inspect_Id这个字段有问题,于是我先去检查了实体类里面关于这个字段的绑定,确定这个字段是没有问题的,于是我尝试找sqlsugar生成后的SQL语句:

在这里插入图片描述

于是我在QueryBuilder里面找到了sqlsugar拼接后的sql,发现在进行左连接的时候,sqlsugar是按照表格顺序生成sql的,而我在写JoinType.Left的时候未按照顺序写,导致A,B两张表进行left join的时候,我写的是A,C两张表的条件,left join与on的条件错位,所以出现了上述问题,于是我将顺序调换成如下,问题就解决了:

在这里插入图片描述

所以在使用sqlsugar进行多张表关联查询的时候,一定要注意表的顺序,按照db.Queryable<A,B,C>这里添加的顺序依次进行绑定,sqlsugar在生成sql语句的时候也是按照这个顺序进行的。

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值