这些都是简单的,一列查询,就像这样
this.Where(“Invisible = 0”);
存在(从[仓库]中选择ep_.Id.[dbo] .EventPart ep_其中Id = ep_.EventId和ep_.DataType = 4
在上面的例子中,我通常会引用一个短名称的父表Event,即event_.Id,但是当Nhibernate动态生成这些短名称时,不可能知道它会是什么.
所以我尝试使用Id,从上面的ep_,其中Id = ep_.EventId
当代码运行时,由于动态短名称,EventPart表短名称ep_具有前缀的另一个短名称event0_.ep_,其中event0_指向父表.
this.Where(“(存在(从[isnapshot.Warehouse]选择ep_.Id.[dbo] .EventPart ep_,其中Id = ep_.EventId和ep_.DataType = 4)”);
但是当它生成时会创建它
select cast(count(*)as INT)为col_0_0_
来自[isnapshot.Warehouse].[dbo].活动event0_
where(存在(从[isnapshot.Warehouse]中选择ep_.Id.[dbo] .EventPart event0_.ep_其中event0_.Id = ep_.EventId和ep_.DataType = 4)
它已将event0_正确添加到Id
是否构建了映射层where子句来处理这个问题,如果是的话,我哪里出错?
解决方法
exists (select ep_.Id from [Warehouse].[dbo].EventPart [ep_] where Id = ep_.EventId and ep_.DataType = 4
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。