У меня есть следующий SQL:Fluent NHibernate присоединиться специфицировать присоединиться Критерии
select a.a, b.b, c.c
from apple a
join burger b on a.b = b.b
left outer join charlie c on a.c = c.c
where c.x = 'kke';
для отображения его, я попробовал следующее свободно отображение NHibernate:
public entityMap()
{
Table("apple");
Id(x => x.a, "a").GeneratedBy.TriggerIdentity();
Join("burger", m =>
{
m.Inverse();
m.Fetch.Join();
m.KeyColumn("b");
});
Join("charlie", m =>
{
m.Inverse();
m.Fetch.Join();
m.KeyColumn("c");
});
Where("this_1_.x = 'kke'");
}
, который приводит к следующему SQL:
select a.a, b.b, c.c
from apple a
join burger b on a.a = b.b
left outer join charlie c on a.a = c.c
where c.x = 'kke';
как вы можете видеть, соединения aa = bb и aa = cc, когда я хочу, чтобы они были ac = cc и ab = Синяя книга
Как я могу принять это без ссылок (я хочу, чтобы только одна сущность из всех трех таблиц).