У меня есть следующие таблицы:
table A:
FOO (PK) | CLIENT (PK)
table B:
BAR (PK) | CLIENT (PK/FK) | FOO (FK)
PK -> первичный ключ
FK -> внешний ключ
Между А и Б. существует отношение один ко многим.
Я не могу просто сделать это:
class AMap
{
public AMap()
{
CompositeId().KeyReference(a => a.FOO)
.KeyReference(a => a.CLIENT);
HasMany(a => a.B);
}
}
class BMap
{
public BMap()
{
CompositeId().KeyReference(a => a.BAR)
.KeyReference(a => a.CLIENT);
References(a => a.A);
}
}
Сбой произойдет со следующим исключением:
Внешний ключ (FKE7804EB3DA7EBD4B: B [FOO])) должен иметь такое же количество столбцов, что и первичный ключ, на который есть ссылка (A [FOO, CLIENT])
Можно ли правильно сопоставить это с беглым nhibernate?