如何通过NHibernate将多个类映射到一个表?

时间:2009-02-20 21:20:34

标签: class fluent-nhibernate mapping nhibernate-mapping

我有一个Employee类,其Name属性为Name类,Contact属性为Contact类型。 Name类有两个字符串属性:FirstName和LastName,Contact类具有PhoneNumber和EmailAddress等属性。

所有数据都在一个表中找到,并假设它无法更改。我的地图会是什么样子,所以我可以根据id加载一个Employee,并使用适当的值填充Contact和Name属性?或者这甚至可能吗?

public class Employee
{       
    //Constructor ommitted.

    public virtual Name Name { get; set; }      
    public virtual Contact ContactInfo { get; set; }
}

public class Name
{       
    // Constructor omitted.

    public string FirstName { get; set; }
    public string LastName { get; set; }
}

Employee表包含以下列:EmployeeId,FirstName,LastName以及各种联系信息。

2 个答案:

答案 0 :(得分:3)

使用组件映射...更多详细信息:

http://www.hibernate.org/hib_docs/nhibernate/html/components.html

答案 1 :(得分:1)