現在、次のコードを使用して、Fluent NHibernate 自動マッピングで基本型を無視しています。
AutoMap.AssemblyOf<Class1>(new MyDefaultAutomappingConfiguration())
.Conventions.Setup(GetConventions())
.IgnoreBase<MyCore.BaseTypes.AmazingBaseType>()
.IgnoreBase<MyCore.BaseTypes.AnotherAmazingBaseType>()
.UseOverridesFromAssemblyOf<AutoPersistenceModelGenerator>();
私が持っているすべての基本型に対してメソッドMyCore.BaseTypes
を使用する代わりに、名前空間 (つまり ) によって基本型を無視する方法はありますか?IgnoreBase()
これを達成するために拡張クラス(つまり)でオーバーライドShouldMap(Type)
されたメソッドを使用してこれを達成しようとしましたが、それでも基本型をマップしようとしました:DefaultAutomappingConfiguration
MyDefaultAutomappingConfiguration
public class MyDefaultAutomappingConfiguration: DefaultAutomappingConfiguration {
public override bool ShouldMap(Type type) {
return !IsBaseType(type);
}
private bool IsBaseType(Type type) {
return type.Namespace == typeof(MyCore.BaseTypes).Namespace;
}
}