Fluent Nhibernate - 一对多映射 - 与父级类型相同的子级

发布于 2024-11-19 09:08:20 字数 620 浏览 1 评论 0原文

我有一个类定义为:

public class ReportClient
{
    public virtual int? Id { get; set; }

    public virtual long? ClientId { get; set; }

    public virtual string Name { get; set; }

    public virtual string EmailAddress { get; set; }

    public virtual string AdditionalEmailAddress { get; set; }

    public virtual List<ReportClient> ChildClients { get; set; }
}

如您所见,ChildClients 与 Parent 具有相同的类型。

请指导我如何为 List中的每个 ChildClient 映射“ChildClients” ChildClients 有一个新表记录,该记录设置了“ParentId”列(ParentId = Id),

请指导。

谢谢你!

I have a class defined as:

public class ReportClient
{
    public virtual int? Id { get; set; }

    public virtual long? ClientId { get; set; }

    public virtual string Name { get; set; }

    public virtual string EmailAddress { get; set; }

    public virtual string AdditionalEmailAddress { get; set; }

    public virtual List<ReportClient> ChildClients { get; set; }
}

As you can see ChildClients are of same type as Parent.

Please guide me how can I map 'ChildClients' so for each ChildClient in List<ReportClient> ChildClients there is a new table record with a column 'ParentId' being set for this record ( having ParentId = Id)

Please guide.

Thank you!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

命硬 2024-11-26 09:08:20

我没有要测试的环境,但这应该可行,如果不行,请尝试交换列名称。

  HasManyToMany(x => x.ChildClients)
    .ParentKeyColumn("ParentId")
    .ChildKeyColumn("Id") 

I don't have the enviroment to test, but this should work, try swapping the column names if it doesn't.

  HasManyToMany(x => x.ChildClients)
    .ParentKeyColumn("ParentId")
    .ChildKeyColumn("Id") 
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文