次のエンティティがあります。
Patient: PatientId, Name, //etc ...
Doctor: DoctorId, Name, //etc...
MedicalConsultation: MedicalConsultationId, Patient, Doctor //(Patient is of type Patient and Doctor is of type Doctor).
ここで、MedicalConsultations テーブルには DoctorId と PatientId が外部キーとして含まれています。
NHibernate では、次のようなことをする必要があります。
restrictions.Add(NHibernate.Criterion.Expression.Like("Doctor.Name", "%" + PartOfDoctorName + "%"));
制限は、さまざまな制限を保持する IList です。
このコードを実行すると、MedicalConsultation に Doctor.Name プロパティがないことが返されます。
どういうわけかプロパティを平坦化する必要があります: Doctor -> Doctor.Name そして、このような ICriterion を制限のリストに追加します。
ありがとう、タマシュ