当前位置:  开发笔记 > Android > 正文

在运行时添加nHibernate映射?

如何解决《在运行时添加nHibernate映射?》经验,为你挑选了1个好方法。

背景:

我试图使用nHibernate时遇到映射失败.该应用程序由几个程序集组成.其中一个程序集是一个有用的例程库,另一个是使用该库的应用程序代码.库程序集将自身添加到nHibernate配置中,但由于它不了解其他程序集,因此不会添加它们.我的xml映射文件位于应用程序程序集中.我认为它没有找到它,因为它没有查看应用程序集.

问题: 您是否可以映射到任意程序集中的类而不将其添加到配置中?

如果没有,您可以在运行时添加映射吗?

谢谢

ps我确实确保映射文件被标记为嵌入式资源


更新 - 2009年4月3日

我更改了底层库以允许在初始化时添加程序集.这似乎很有效.



1> Darin Dimitr..:

您可以在构建会话工厂时在运行时添加映射:

ISessionFactory sf = new Configuration()
    .AddFile("Item.hbm.xml")
    .AddFile("Bid.hbm.xml")
    .BuildSessionFactory();

或与组件:

ISessionFactory sf = new Configuration()
    .AddAssembly("NHibernate.Auction")
    .BuildSessionFactory();

推荐阅读
有风吹过best
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有