我有表格后缀为
的表格列create table T1234_DATA (CHANGEUSER_1234 nvarchar(50), ...)
对于表格,我写了流利的映射。直接使用时,它工作正常,但有(由于某些历史原因)许多视图或存储过程是通用suffic _0001
的别名列:
create view v1234_DATA as select CHANGEUSER_1234 as CHANGEUSER_0001
每当我想使用这样的视图时,我必须再次编写完整的类映射。在Fluent或HBM中是否存在某种替代列映射以在所有命名查询之间共享它? sql列名中的通配符,在查询上选择替代类映射,映射到单个属性的多个sql列等?
答案 0 :(得分:1)
如果我理解你的问题,加入可以解决问题。
如你所见:
NHibernate Mapping - <join/>
How to join table in fluent nhibernate
或许您可以使用公式(或某些公式),如:
public class UserMap : ClassMap<User> {
public User() {
Table("TB_USER");
Id(x => x.Id).GeneratedBy.Identity();
Map(x => x.ChangeUser1234, "CHANGEUSER_1234");
Map(x => x.ChangeUser0001)
.Formula("(select CHANGEUSER_0001 from TABLE where ...)");
}
}