2013-10-03 31 views
0

將hbm文件與實體程序集分開存儲並按需加載的最佳方法是什麼?我假設我需要將xml文件加載到HbmMapping實例中,並將其序列化爲Hibernate.Cfg.Configuration實例?將Hbm.xml存儲在文件夾中,根據需要加載它們

+0

你是什麼意思的「按需」?您應該在應用程序啓動時創建一次NHibernate Session Factory。創建完成後,我認爲你不能修改它。 –

+0

這是真的,按要求=一次,但我做了一些修改後,該XML文件。 – dbardakov

回答

1

Configuration.AddAssembly(Assembly)是加載* .hbm.xml映射的更常用的方法之一,但它不是唯一的方法。這些都是的 「添加映射」 的方法:

  • AddAssembly
  • AddClass
  • AddDeserializedMapping
  • AddDirectory
  • AddDocument
  • AddFile
  • AddInputStream
  • AddMapping
  • AddResource
  • AddUrl
  • AddXml
  • AddXmlFile
  • AddXmlReader
  • AddXmlString

假設你有一個名爲方法Stream OpenHbm(String),我相信這樣的事情應該工作:

foreach (var hbmName in hbmNames) 
    using (var stream = OpenHbm(hbmName)) 
     config.AddInputStream(stream, hbmName); 
+0

config.AddXml(字符串)適合我。 – dbardakov

相關問題