OrderDetails のリストを持つ Order エンティティがある場合、NHibernateUtil.Initialize(Order.Details) を使用して、注文と共に詳細を簡単に読み込むことができます。したがって、NHibernate には、SQL ステートメントを生成するためのすべての情報が含まれていることは明らかです。しかし、条件を手動で作成せずに、詳細のみをデータベースに照会するにはどうすればよいでしょうか (Entity Framework の CreateSourceQuery に似ています)。NHibernateUtil.GetList(Order.Details) のようなものはありますか?
更新: Darin's answer this を使用して、最終的には最終的に終了しました。これは十分に一般的であり、エンティティ基本クラスで実装できます
Dim entity as EntityBase
Dim queryString = String.Format("select entityAlias.{1} from {0} entityAlias where entityAlias.id = :ID", entity.GetType.Name, collectionPropertyName)
Dim query = Session.CreateQuery(queryString).SetParameter("ID", entity.ID)
Return query.List