【问题标题】:NHibernate single column id that references another object引用另一个对象的 NHibernate 单列 ID
【发布时间】:2010-05-17 16:04:57
【问题描述】:

我有一个主键是单列的类,它是对另一个对象的单列主键的引用。我能看到在 NHibernate 中映射它的唯一方法是假装它是一个复合键(即使它是一个单列键)并使用键引用映射。有没有更合适的方式?

以下片段:

class CompanyExportCriteria
  public Company Company { get; set; }

class Company
  public string Id { get; set; }

Company 映射到 COMPANY 表(ID 为 PK)
CompanyExportCriteria 映射到 COMPANY_EXPORT_CRITERIA 表 (COMPANY_ID) 作为键。

PS - 我正在使用 Fluent NHibernate 进行映射。

【问题讨论】:

    标签: nhibernate fluent-nhibernate nhibernate-mapping


    【解决方案1】:

    这是 Fluent NHibernate 的一对一映射文档的链接:

    http://wiki.fluentnhibernate.org/Fluent_mapping#HasOne_.2F_one-to-one

    这里是 NHibernate 的相同内容的链接:

    http://www.nhforge.org/doc/nh/en/index.html#mapping-declaration-onetoone

    您不需要复合键。

    【讨论】:

    • NHibernate 文档提供了帮助,特别是关于“外来”ID 生成器机制的部分。我必须使用的语法似乎不是理想的流畅语法(首先,不使用 lambda 作为 Foreign 参数。但这是我要工作的内容: Id("COMPANY_ID"); .GeneratedBy.Foreign (“公司”)
    猜你喜欢
    • 1970-01-01
    • 2011-07-08
    • 1970-01-01
    • 2011-07-20
    • 2018-03-19
    • 2016-04-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多