Я собираюсь перейти на Fluent NHibernate - единственная проблема, с которой я столкнулся до сих пор, заключается в том, что вы не можете указать имя внешнего ключа в сопоставлении присоединенного подкласса.
Есть ли у кого-нибудь решение для этого или обходной путь?
Я нашел этот пост , но предложение явно не было добавлено в код.
Я бы хотел избежать настройки кода самостоятельно, если возможно.
Любая помощь будет отличной ...
Пример:
public class Product
{
public string Name { get; set; }
}
public class Hammer : Product
{
public string Description { get; set; }
}
public class ProductMap : ClassMap
{
public ProductMap()
{
Polymorphism.Implicit();
Map(x => x.Name);
}
}
public class HammerMap : SubclassMap
{
public HammerMap()
{
Extends();
}
}
Это сгенерирует что-то вроде:
ProductId
Обратите внимание, что имя внешнего ключа не указано в файле hbm сопоставления - например: