3
与流利的nhibernate,有没有办法在运行时动态切换映射表?流利的NHibernate,动态改变映射表?
例如:
public class XYClassMap : ClassMap<XY>
{
public XYClassMap()
{
Table("XYTable");
Id(d => d.Id).GeneratedBy.Identity();
Map(d => d.Value);
(...)
由于有多个插件,他们每个人都使用这一个班,但他们需要有不同的表工作。我期待这样的事情:
public class XY {
public string Tablename {get; set;}
}
public class XYClassMap : ClassMap<XY>
{
public XYClassMap()
{
Table(Tablename);
Id(d => d.Id).GeneratedBy.Identity();
Map(d => d.Value);
(...)
所以每一个动作方法可以用同一类工作,只需要设置这一个属性“表名”。
感谢您的帮助,
斯特芬
这是我尝试过的东西(起初失败,因时间压力而放弃)。非常感谢,我会在我的开发PC上立即检查它,并且会返回到这里;)顺便说一句,保持它! – Steffen 2010-02-18 19:53:51
太棒了!它完美的作品。我用映射的通用基础类的你的想法,进口通过MEF从插件的所有模型和取得的插件库获取这样的数据: 公开名单的GetData (INT ID,字符串modelClassname)其中T:IData的 { 返回会话。在(modelClassname).Where(d => d.ObjectId == id).ToList(); } 感谢您的灵感,我会立即接受:) –
Steffen
2010-02-18 22:36:24
很高兴听到你得到它的工作:) – 2010-02-19 09:06:50