我正在使用最新版本的Fluent NHibernate自动化。是否有任何约定或属性可以设置为停止在所有表中创建外键约束?我有近200个班级,所以我不能去每个班级和属性名称并设置
ForeignKeyConstraintNames("none", "none")
如何在Automapping中添加ForeignKeyConstraintNames(“none”,“none”)?我不想硬编码表名或列名。我想让AutoMapping创建没有外键的所有映射。 Basicall不会在数据库中创建任何外键。我们应该怎么做? 有类似的POST HERE,但答案对我来说并不清楚。
答案 0 :(得分:1)
一个简单的约定
public class NoForeignKeys : IReferenceConvention, IHasManyConvention
{
public void Apply(IManyToOneInstance instance)
{
instance.ForeignKey("none");
}
public void Apply(IOneToManyCollectionInstance instance)
{
instance.Key.ForeignKey("none");
}
}
// use it
AutoMap.AssemblyOf().Conventions
.FromAssembly() or .Add(typeof(NoForeignKeys))