从NHibernate开始

时间:2010-04-20 19:00:06

标签: c# nhibernate postgresql

从NHiberante开始,我遇到了很大的困难。

主要问题:

我的hbm.xml文件应该驻留在哪里?我创建了一个Mappings文件夹,但收到错误“找不到xxx.hbm.xml文件。”

我试图通过方言cf.AddClass(typeof(xxx))加载特定的类;但它仍然给我同样的错误(文件被标记为已嵌入的资源。

此外,我遇到了与它有关的重大问题。我停止尝试使用cfg xml文件,并尝试使用我在这里的库更直接的方法。

Configuration cfg = new Configuration();
        cfg.AddClass(typeof(Tag));

        ISessionFactory sessions = cfg.BuildSessionFactory();
        AgnosticConnectionHandler agch = new AgnosticConnectionHandler("xxx","xxx","geo_biblio","localhost",
            5432,DatabaseInstance.PostgreSQL);
        ISession sessao = sessions.OpenSession(agch.GetConnection);

        ITransaction tx = sessao.BeginTransaction();

        Tag tag1 = new Tag();
        tag1.NomeTag = "Teste Tag NHibernate!!!";

        sessao.Save(tag1);
        tx.Commit();
        sessao.Close();

给我的任何提示?我在这段代码的第2行中得到了异常,但仍然不确定该怎么做。

感谢任何帮助。感谢

1 个答案:

答案 0 :(得分:1)

如果你是从nHibernate开始我认为你真的应该看看fluent nhibernate,它更容易开发和维护映射,它甚至有一个自动映射选项

另一个选项是来自confORMFabio Maulo(nhibernate首席开发人员),看起来是一个很棒的工具。

另外,你可以看一下s#arp architecture,你可以从这个项目中得到一些不错的想法。