在Fluent NHibernate中映射外部表的属性两次

时间:2010-10-28 06:29:10

标签: nhibernate fluent-nhibernate fluent

我有两个这样的表:(请注意非标准的数据库模式命名)

table T_Pen
  TP_ID
  TP_PrimaryColorID
  TP_SecondaryColorID
  ...

table E_Color
  EC_ID
  EC_ColorName
  ...

我想使用Fluent NHibernate创建2个表到域对象Pen的映射。

class Pen
{
    PenID;
    PrimaryColorName;
    SecondaryColorName;
    ...
}

我该怎么做?

2 个答案:

答案 0 :(得分:1)

如果您只引用名称,我认为您不能再插入/更新。

您可以创建PenColour视图或隐藏笔类中的实际引用,只显示Name属性。

答案 1 :(得分:0)

班级笔 {
    int PenID;
    Color PrimaryColor;
    Color SecondaryColor;
}

班级颜色
{
    int ColorID;
    string ColorName;

}

类ColorMap
{
    Id(x => x.ColorID);
    Map(x => x.ColorName);
}

类PenMap
{
    Id(x => x.PenID);
    参考文献(x => x.PrimaryColor).Column(“TP_PrimaryColorID”);
    引用(x => x.SecondaryColor).Column(“TP_SecondaryColorID”);
}