C# 如何在NHibernate和C中映射子类和子类属性#

C# 如何在NHibernate和C中映射子类和子类属性#,c#,xml,nhibernate,C#,Xml,Nhibernate,如何在Nhibernate中映射这种类型的子类容器情况。帮助我提供映射xml结构 我的班级结构 我的数据库表结构 使用NHibernate和C我希望解决这个问题。 我的大多数表都包含审核详细信息(创建者、修改者和日期时间) 我希望以这样一种方式进行映射,用户ID应保存为CreatedBy和ModifiedBy字段,而日期是直接映射。 但是这些细节在我的班级结构中是一个独立的实体,叫做审计 请帮助我提供这种情况的映射表。 非常感谢您的帮助。如果您想将审计实体放在相同的表中,您需要使用。以下是一个教

如何在Nhibernate中映射这种类型的子类容器情况。帮助我提供映射xml结构

我的班级结构

我的数据库表结构

使用NHibernateC我希望解决这个问题。
我的大多数表都包含审核详细信息(创建者、修改者和日期时间)
我希望以这样一种方式进行映射,用户ID应保存为CreatedByModifiedBy字段,而日期是直接映射。
但是这些细节在我的班级结构中是一个独立的实体,叫做审计 请帮助我提供这种情况的映射表。

非常感谢您的帮助。

如果您想将审计实体放在相同的表中,您需要使用
。以下是一个教程:


我不知道这里的“子类”命名是否正确。但“Rytmis”给出的细节澄清了我的疑问。接下来是如何将用户的UserID映射到CreatedBy和ModifiedBy字段中。我将谷歌并排也…Imho你正试图建立
public class Employee
{
    public virtual int EmpID;
    public virtual string EmpName;
    public virtual Audit AuditDetails;
}

public class Audit
{
    public virtual User CreatedBy;
    public virtual DateTime CreatedOn;
    public virtual User ModifiedBy;
    public virtual DateTime ModifiedOn;
}

public class User
{
    public virtual int UserID;
    public virtual string FullName;
    public virtual Audit AuditDetails;
}
Employee
EmpID(int pk) | EmpName(varchar) | CreatedBy(int) | ModifiedBy(int) | CreatedOn(date) | ModifiedOn(date)

User
UserID (int pk) | FullName(varchar) | CreatedBy(int) | ModifiedBy(int) | CreatedOn(date) | ModifiedOn(date)