nhibernate + критерии.Как вернуть результат без одного ссылочного объекта - PullRequest
3 голосов
/ 17 октября 2010

У меня есть критерии:

ICriteria criteria = Session.CreateCriteria<Entity>()
                .SetFetchMode("Entity1", FetchMode.Eager)
                .SetFetchMode("Entity2", FetchMode.Select)
                .SetMaxResults(max)
                .SetFirstResult(min)
                .Add(Restrictions.Eq("Available", true))
                .CreateAlias("Entity3", "b")//, NHibernate.SqlCommand.JoinType.InnerJoin)
                .Add(Restrictions.Eq("b.Name", variable))
                .SetResultTransformer(new NHibernate.Transform.DistinctRootEntityResultTransformer());

Когда я выполняю этот запрос, все поля из Entity3 возвращаются. Как я могу выполнить его и получить в результате только объекты Entity с ссылками Entity1 и Entity2 без Entity3?

1 Ответ

0 голосов
/ 25 марта 2011

Возможно, это может помочь.

IList criteria2 = session.CreateCriteria(typeof(class1), "cl1")
.CreateAlias("subclass1.subclass2", "s2")
.CreateAlias("subclass1.subclass3", "s3")
.SetProjection(Projections.ProjectionList()
.Add(Projections.Property("s2.NAME"))
.Add(Projections.Property("s3.CODE")))
.List();

Вы можете углубиться в свои сопоставленные классы, чтобы создать псевдоним.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...