NHibernate сам ссылающийся запрос - PullRequest
0 голосов
/ 14 июля 2010

Как вы пишете это в NHibernate?

criteria
    .CreateAlias( "CreatorObject.LastCreated", "me" )
    .Add( Restrictions.Eq( this, "me" ) );

Edit: что-то вроде этого без использования sql

Там, где есть две таблицы TypeA и TypeB, где typeB создает объекты typeA и сохраняет ссылку на последний созданный объект.

criteria
.Add( Restrictions.IdEq( Projections.SqlProjection( "(Select LastCreated From Creators Where Creators.Id = CreatorId) as MasterId", new[] { "MasterId" }, new[] { NHibernateUtil.Int32 } ) ) );

1 Ответ

0 голосов
/ 19 августа 2010

Так что если у вас есть что-то вроде

public class SomeClass {
  public SomeClass LastCreated { get; set;}
  public SomeClass CreatorObject {get; set;}
}

Вы могли бы написать что-то вроде:

criteria.Add(Restrictions.Eq("CreatorObject.LastCreated", this));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...