Nhibernate中的多个主键?

Posted

技术标签:

【中文标题】Nhibernate中的多个主键?【英文标题】:Multiple Primary Keys in Nhibernate? 【发布时间】:2011-11-23 17:10:46 【问题描述】:

在 NHibernate 中映射时如何分配多个主键?

    Id(x => x.TopicID); <<----Primary Key
        Map(x => x.Topic);   <<---Should Also be a Primary Key
        Map(x => x.Subtitle);
        Map(x => x.Description);
        Map(x => x.ImageURL);

    

【问题讨论】:

Topic 不是对象,不是 ID? p.s.您确实应该标记一些已接受的答案 - 您已经提出了 12 个问题,但没有接受任何问题 - 这对您的声誉不利。 您的意思是复合键还是——正如“也”这个词所暗示的——替代键? 【参考方案1】:

使用 CompositeID 方法:

CompositeId()
.KeyProperty(x => x.TopicId, "name")
.KeyReference(x => x.Topic, "anotherName");

【讨论】:

以上是关于Nhibernate中的多个主键?的主要内容,如果未能解决你的问题,请参考以下文章

防止 NHibernate 将 Returning 子句添加到生成的插入语句中

NHibernate 和字符串主键

Fluent NHibernate 主键约束命名约定

如何使用 nhibernate 更新主键

NHibernate的主键是1-1映射吗?

Nhibernate id 具有连续一步递增的 id(HiLo 的替代品)