为什么nhibernate在/ bin / debug中查找hibernate.cfg.xml?

时间:2009-08-16 17:05:28

标签: nhibernate fluent-nhibernate

我有一个包含所有nhibernate代码的类库(使用流畅的域/映射)。

现在我只是在控制台应用程序中进行一些简单的测试,我收到一条错误,说它找不到/ bin / debug中的configruation文件

我的文件位于/consoleTests/hibernate.cfg.xml

为什么要查看控制台应用程序的/ bin / debug文件夹?

3 个答案:

答案 0 :(得分:5)

如果您在没有任何参数的情况下调用Configure()方法,那么我认为hibernate.cfg.xml必须与使用它的应用程序位于同一目录中。

编译项目时,它会被编译到bin/debug/目录。当您运行项目时(通过单击它或在Visual Studio中对其进行调试),工作目录为bin/debug/,因此这是hibernate.cfg.xml文件所在的位置。

你可以:

  • 在Visual Studio中使用post-build事件将hibernate.cfg.xml文件复制到输出目录
  • 致电Configure(path),其中path是您hibernate.cfg.xml目录中/consoleTests/的路径。

有关如何配置NHibernate的详细信息,请查看“A fluent interface to NHibernate - Part 4 - Configuration”。

答案 1 :(得分:1)

您可以将xml属性“复制到输出目录”设置为“始终复制”

答案 2 :(得分:0)

这是在Visual Studio中运行时的当前目录。这就是你在做什么?