Fluent NHibernate 映射忽略所有从泛型基础 class 继承的 classes
Fluent NHibernate mapping ignore all classes that inherit from generic base class
我有一个项目有:
Repository Project:
[
Models:
[
StudentEntity
ClassEntity
]
Overrides:
[
StudentEntityOverride
ClassEntityOverride
]
RepositoryObject
]
RepositoryObject class 继承自 Repo 的基础 class 当我设置映射时:
AutoMap
.AssemblyOf<TEntity>()
.UseOverridesFromAssemblyOf<TOverride>()
.Conventions.Add(DefaultLazy.Never())
.Conventions.Add(DefaultCascade.SaveUpdate());
它将失败,因为 RepositoryObject 没有 ID 映射。 Repo 基础 class 和会话工厂设置和映射位于 nuget 包中,因此不能直接更改。我想做的是能够将映射设置为忽略从 Repo
继承的任何 classes
你可能会像这样例外:
AutoMap.AssemblyOf<TEntity>().Where(x => x != typeof (Repo<TEntity, TOverride>));
我有一个项目有:
Repository Project:
[
Models:
[
StudentEntity
ClassEntity
]
Overrides:
[
StudentEntityOverride
ClassEntityOverride
]
RepositoryObject
]
RepositoryObject class 继承自 Repo
AutoMap
.AssemblyOf<TEntity>()
.UseOverridesFromAssemblyOf<TOverride>()
.Conventions.Add(DefaultLazy.Never())
.Conventions.Add(DefaultCascade.SaveUpdate());
它将失败,因为 RepositoryObject 没有 ID 映射。 Repo 基础 class 和会话工厂设置和映射位于 nuget 包中,因此不能直接更改。我想做的是能够将映射设置为忽略从 Repo
你可能会像这样例外:
AutoMap.AssemblyOf<TEntity>().Where(x => x != typeof (Repo<TEntity, TOverride>));