次のような単純化されたモデルがあるとします。
public class Enquiry
{
public virtual DateTime Created { get; set; }
public virtual Sender Sender { get; set; }
}
public class Sender
{
public virtual IList<Enquiry> Enquiries { get; set; }
}
問い合わせがいくつかの基準を満たしている場合に、送信者とその問い合わせのリストを返すように、LinqtoNhibernateクエリをどのように構築できますか。私はこのようなことを試しました:
return session.Linq<Enquiry>()
.Where(enquiry => enquiry.Created < DateTime.Now)
.Select(enquiry => enquiry.Sender)
この場合、タイプSenderをタイプEnquiryにキャストできないというInvalidCastExceptionが発生します。
HQLを使用せずにこれを行う方法についての指針はありますか?