Par*_*ara 6 c# nhibernate linq-to-nhibernate queryover
我有以下问题
基本上我有以下2个片段:
var contactAssociation =
session.QueryOver<ContactAssociation>(() => contactAssociationAlias)
.Where(() =>
contactAssociationAlias.Contact.ID == careGiverId &&
contactAssociationAlias.Client.ID == clientKey)
.Where(() =>
contactAssociationAlias.AclRole.RoleName == "Care Giver")
.SingleOrDefault();
Run Code Online (Sandbox Code Playgroud)
和
var contactAssociation = session.Query<ContactAssociation>()
.Where(cr =>
cr.Contact.ID == careGiverId
&& cr.Client.ID == clientKey)
.Where(cr =>
cr.AclRole.RoleName == "Care Giver")
.SingleOrDefault();
Run Code Online (Sandbox Code Playgroud)
第二个工作第一个输出此错误:
Message=could not resolve property: AclRole.RoleCode of:
SL.STAdmin.DAL.ContactAssociation
Run Code Online (Sandbox Code Playgroud)
有人知道为什么吗?先感谢您
Vad*_*dim 14
您需要在第一个查询中指定Join.第二个查询中的LINQ提供程序会自动为您执行此操作.
session.QueryOver<ContactAssociation>(() => contactAssociationAlias)
.Where(() =>
contactAssociationAlias.Contact.ID == careGiverId &&
contactAssociationAlias.Client.ID == clientKey)
.JoinQueryOver(() => contactAssociationAlias.AclRole)
.Where(a => a.RoleName == "Care Giver")
.SingleOrDefault();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6696 次 |
| 最近记录: |