0
我有了一個枚舉類型的屬性模型:可以將NHibernate配置爲自動爲特定類型的所有列調用.CustomType <T>?
public virtual Units Unit { get; set; } // Units is an enum
我有一個叫EnumMapper類,它處理一些自定義映射邏輯我有我的數據庫使用。在我的地圖中,我有:
Map(x => x.Unit).CustomType<EnumMapper<Units>>();
這很好。沒有問題。不過,我也有不少型號具有Units
類型的屬性。我想知道是否可以添加一些東西給我的FluentConfiguration
對象,告訴NHibernate使用類型的任何和所有屬性的Units
類型的這種類型映射,而不是在每一個上調用.CustomType<T>()
。下面是如何配置的NHibernate至今:
private ISessionFactory InitializeSessionFactory()
{
sessionFactory = Fluently.Configure()
.Database(DatabaseConfiguration)
.Mappings(m => m.FluentMappings
.AddFromAssemblyOf<DatabaseAdapter>()
.Conventions.Add(Table.Is(x => x.EntityType.Name.ToLowerInvariant())) // All table names are lower case
.Conventions.Add(ForeignKey.EndsWith("Id")) // Foreign key references end with Id
.Conventions.Add(DefaultLazy.Always()))
.BuildSessionFactory();
return sessionFactory;
}
我有一種感覺,這是因爲調用別的.Conventions.Add()
一樣簡單,但我似乎無法得到它的權利。