我正在为一个数据库创建映射xml文件,但我有一个对象LogObj
,我想根据哪个logid
被传递,映射到不同的表(具有相同的模式)。NHibernate可以将列映射到表?
例如,表tblsystemlogs
包含列logstable
其可包含各种表的名称,如tbllogsprod
,tbllogstest
,tbllogsdev
。
查询是:SELECT logstable FROM tblsystemlogs WHERE logid = {0};
我正在为一个数据库创建映射xml文件,但我有一个对象LogObj
,我想根据哪个logid
被传递,映射到不同的表(具有相同的模式)。NHibernate可以将列映射到表?
例如,表tblsystemlogs
包含列logstable
其可包含各种表的名称,如tbllogsprod
,tbllogstest
,tbllogsdev
。
查询是:SELECT logstable FROM tblsystemlogs WHERE logid = {0};
您是否尝试过与Table Per Concrete Class映射。
你会有某种基本的抽象类 - 即。日志和三个具体实现LogProduction,LogTest和LogDev。
然后SystemLog类将有一个属性Log与any mapping,logstable列将用作元列。
这绝对看起来像我在找的东西。一旦我有剩余的20个表格映射,我会试一试。 – Romoku
这是什么问题?你有什么尝试? –
@MartinErnst问题是可以做到的。我不确定是否可以在xml中创建视图。 – Romoku