2010-12-01 205 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")); 
     } 
     ... 
    } 
}