NHibernate映射异常。没有坚持者
我在试着让NHibernate去工作。我有一门课:NHibernate映射异常。没有坚持者,nhibernate,nhibernate-mapping,Nhibernate,Nhibernate Mapping,我在试着让NHibernate去工作。我有一门课: mm.k.Domain.Kampagne (命名空间/程序集是mm.k.Domain) 在另一个VisualStudio项目(Assembly mm.k.Infrastructure)中,我得到了映射文件(在映射目录中)、hibernate.cfg.xml和一些存储库 这是我的映射文件: <?xml version="1.0" encoding="utf-8" ?> <hibernate-mapping xmlns="urn
mm.k.Domain.Kampagne
(命名空间/程序集是mm.k.Domain)
在另一个VisualStudio项目(Assembly mm.k.Infrastructure)中,我得到了映射文件(在映射目录中)、hibernate.cfg.xml和一些存储库
这是我的映射文件:
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
assembly="mm.k.Domain"
namespace="mm.k.Domain">
<class name="Kampagne" table="Kampagner">
<id name="Id">
<generator class="identity" />
</id>
<property name="Navn" not-null="true" />
<property name="Logo" />
</class>
</hibernate-mapping>
这就是不起作用的!
打电话时:
var test = session.Get<Kampagne>(kampagneId);
一切都很好
有什么想法吗?提前谢谢。不确定您的nhibernate.cfg.xml文件是什么样子,但我通常有这样一个项目
<mapping assembly="mm.K.Infrastructure"/>
根据你提供的信息。NHibernate使用此选项从该特定程序集加载映射文件
这将为您提供所需的映射。不确定您的nhibernate.cfg.xml文件是什么样子,但我通常有这样一个项目
<mapping assembly="mm.K.Infrastructure"/>
根据你提供的信息。NHibernate使用此选项从该特定程序集加载映射文件
这将为您提供所需的映射。以防有人像我一样在Hibernate.NET上遇到此问题。
确保您在属性窗口中为文件构建操作选择了“嵌入式资源”,以防有人像我一样在Hibernate.NET上遇到此问题。
确保在“属性”窗口中为文件生成操作选择了“嵌入式资源”每当使用hbm.xml文件时,您都会这样设置配置类:
Configuration cfg = new Configuration();
cfg.Configure();
// Add class mappings to configuration object
cfg.AddAssembly(Assembly.GetCallingAssembly());
ISessionFactory sessionFactory = cfg.BuildSessionFactory();
无论何时使用Nhibernate.Mapping.Attributes(如classe),您都必须使用:
例如,在产品类中使用Mapping.attributes
Configuration cfg = new Configuration();
cfg.Configure();
// Add class mappings attributes to configuration object
cfg.AddInputStream(HbmSerializer.Default.Serialize(typeof(Model.Product);
ISessionFactory sessionFactory = cfg.BuildSessionFactory();
无论何时使用hbm.xml文件,您都将按如下方式设置配置类:
Configuration cfg = new Configuration();
cfg.Configure();
// Add class mappings to configuration object
cfg.AddAssembly(Assembly.GetCallingAssembly());
ISessionFactory sessionFactory = cfg.BuildSessionFactory();
无论何时使用Nhibernate.Mapping.Attributes(如classe),您都必须使用:
例如,在产品类中使用Mapping.attributes
Configuration cfg = new Configuration();
cfg.Configure();
// Add class mappings attributes to configuration object
cfg.AddInputStream(HbmSerializer.Default.Serialize(typeof(Model.Product);
ISessionFactory sessionFactory = cfg.BuildSessionFactory();
我开始有问题了。但突然发现映射文件没有嵌入。
转到.hbm.xml文件。单击属性。然后高级->选择“嵌入式资源”我发现了这个问题。但突然发现映射文件没有嵌入。
转到.hbm.xml文件。单击属性。然后高级->选择“嵌入式资源”,这就成功了。非常感谢。奇怪的是,NHibernate入门教程没有提到这一点?这就成功了。非常感谢。奇怪的是,NHibernate入门教程没有提到这一点?很好,这对我来说很好,不像这里的任何其他答案。很好。很好,这对我来说很好,不像这里的任何其他答案。美好的