Additional Info:
- when I do not specify the DistinctRootEntity ResultTransformer, the
query returns instances of 'Prestation', however, multiple copies of
the same instance are present in the result.

On 8 apr, 16:38, FrederikGheysels <[email protected]>
wrote:
> Hi all,
>
> I'm using NHibernate 2.1.2.400, and I'm having an issue with a an
> ISQLQuery query.
>
> The reason why I use an ISQLQuery here, is that this query uses a
> table for which I have no entity mapped in NHibernate.
>
> The query looks like this:
>
> ISQLQuery query = session.CreateSQLQuery (
>     "select p.*, price.* " +
>     "from prestation p left outer join prestationprice price on
> p.PrestationId = price.PrestationId " +
>     "where p.Id IN ( select id from prestationregistry where ...");
>
> 'Prestationregistry' is the table that is not known by NHibernate
> (unmapped, so therefore the native SQL Query).
>
> my code continues like this:
>
> query.AddEntity ("p", typeof(Prestation));
> query.AddJoin ("price", typeof(PrestationPrice));
>
> query.SetResultTransformer (Transformers.DistinctRootEntity);
>
> var result = query.List();
>
> So far so good.
> I expect that I'm given a list of 'Prestation' instances as a result
> of this query, since I declared 'Prestation' as being the root-object
> that has to be returned by the AddEntity method.
> I also expect that the PrestationPrices for each Prestation are
> eagerly loaded by this query (hence the AddJoin method).
>
> To my surprise, the List() method returns a collection of
> PrestationPrice instances instead of Prestation instances.
> How come ?  Am I doing something wrong ?  And if so, could you be so
> kind to tell me what I'm doing wrong ?
> Or, is this a bug ?

-- 
You received this message because you are subscribed to the Google Groups 
"nhusers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/nhusers?hl=en.

Reply via email to