현재 NHiberate를 .NET 2.0 및 NHibernate 2.2와 함께 DAL로 사용하는 프로젝트에서 작업 중입니다.NHibernate 반환 값
오늘 나는 내가 원하는 것을 얻기 위해 많은 엔티티들/컬렉션들에 가입해야만했다. 괜찮습니다.
내가 얻은 것은 쿼리가 특정 엔터티 유형의 개체 목록을 반환하지 않고 결과가 다른 엔터티의 다양한 속성을 포함하기를 원했기 때문입니다.
다음 쿼리는 내가하는 일이 아니지만 내가 여기서 말하는 쿼리 종류입니다.
select order.id, sum(price.amount), count(item)
from Order as order
join order.lineItems as item
join item.product as product,
Catalog as catalog
join catalog.prices as price
where order.paid = false
and order.customer = :customer
and price.product = product
and catalog.effectiveDate < sysdate
and catalog.effectiveDate >= all (
select cat.effectiveDate
from Catalog as cat
where cat.effectiveDate < sysdate
)
group by order
having sum(price.amount) > :minAmount
order by sum(price.amount) desc
내 질문에 어떤 결과가 반환 될까요? 그것은 확실히 Order 유형이 아니며 LineItem 유형도 아닙니다.
도움 주셔서 감사합니다.
요한은
Fahad, 좀 더 구체적으로 설명해 주시면 감사하겠습니다. session.CreateQuery()에는 사용해야하는 것으로 생각되는 list() 메서드가 있습니다. list() 메서드를 사용하여 select 문에있는 모든 항목을 포함 할 객체 배열을 반환하는 방법은 무엇입니까? 감사합니다. . – John
IQuery에는 일반적인 목록 방법이 있습니다. IQUERY objQuery = mySession.CreateQuery (....... VAR 결과를 다음과 같이 호출 할 수 = objQuery.List
파하드, 난 당신이 작업을 수행 무엇을 제안 위의 벤에 대답한다. List