2010-12-01 161 views
0

使用FluentNhiberante是有办法映射以下:FluentNhibernate映射到父对象的属性

父表(员工)

EmployeeId INT Primary Key 
FirstName 
LastName 
EmployeeTypeId 

查找表(EmployeeType)

EmployeeTypeId INT Primary Key 
EmployeeTypeDescription 

我的课程定义为:

public class Employee 
{ 
    int EmployeeId {get; set;} 
    ... 
    string EmployeeTypeDescription {get; set;} 
} 

是否有一种方法通过FluentNhibernate映射通过查找员工中的EmployeeTypeId列来填充EmployeeTypeDescription表中Employee对象的EmployeeTypeDescription属性?

我很确定正常和正确的方法是通过在映射文件中使用引用,然后向Employee类添加EmployeeType属性并使用Employee.EmployeeType.EmployeeTypeDescription访问描述。我无法改变代码来做到这一点,所以想知道如何设置EmployeeTypeDescription属性。

回答

0

您可以将该类映射到视图。

就正常的做法而言,您是正确的。

2

应该可以调整下examplecode:

public class EmployeeMap : ClassMap<Employee> 
{ 
    public EmployeeMap() 
    { 
     ... 
     Join("EmployeeType", join => 
     { 
      join.KeyColumn("EmployeeTypeId"); 
      join.Map(k => k.TherapieOK, "somecolumn")); 
     } 
     ... 
    } 
}