拥有不同的自动化配置"

时间:2015-03-12 06:19:49

标签: c# nhibernate fluent-nhibernate fluent-nhibernate-mapping automapping

我想要两种不同的映射配置。我需要以某种方式将参数传递给约定,以便它们可以表现不同。除了使用lock和静态字段,我该怎么做?

1 个答案:

答案 0 :(得分:0)

我找到了解决方案:Conventions.Find允许查找约定实例。

var map = AutoMap.AssemblyOf<AutomappingConfiguration>(new AutomappingConfiguration())
    .Conventions.AddFromAssemblyOf<AutomappingConfiguration>()
    .UseOverridesFromAssemblyOf<AutomappingConfiguration>();

foreach (var c in map.Conventions.Find<TableConvention>())
{
    c.AllWritable = allWritable;
}