我有一個文檔類有一個用戶屬性是擁有該文檔的用戶,但我也有一個用戶列表。有權訪問文檔的用戶。我正在嘗試創建一個查詢,它將返回我擁有的或我可以訪問的文檔。如何添加或查詢NHibernate之間的屬性和多對多?
IList<Document> results = UnitOfWork.CurrentSession.CreateCriteria(typeof(Document))
.CreateCriteria("Owner")
.CreateCriteria("UserList")
.Add(nh.Criterion.Restrictions.IdEq(obj.Id))
.SetFirstResult(pageSize * page)
.SetMaxResults(pageSize)
.List<Document>();
這是我迄今爲止試過的,但無濟於事。 Document類的結構縮寫爲:
public class Document : DomainObject<Document>{
public Document(){
UserList = new List<User>();
}
public virtual User Owner{get;set;}
public virtual IList<User> UserList{get;set;}
}
我很欣賞這個指導!
Cheeers,
安德魯
例如,SQL我找
declare @UserID uniqueidentifier
set @UserID = '37f7a55f-84c9-461b-a5b2-b412fe96932b'
select * from [Document] s
where s.UserID = @UserID
or exists(select * from DocumentUser su where su.userid = @UserID)
感謝您的反饋意見。以上將意味着UserList是Owner的一個屬性,但UserList是Document的一個屬性。我也認爲這是一個錯誤。 無法解析屬性:UserList:uk.co.andrewrea.BusinessLogic.Domain.Owner – 2009-07-29 17:01:05
我用一個示例sql更新了它,我正在重新創建 – 2009-07-29 17:35:55