假设我有两个表:加入表映射与逆FK
表MY_ENTITY
ID: PK
OTHER_ID: FK to table OTHER
表中的其他
ID: PK
COL: The column I want
我的实体是这样的:
class MyEntity : Entity
{
public virtual Column { get; set; }
}
我的自动映射覆盖看起来像这样:
mapping.IgnoreProperty(x => x.Column);
mapping.Join("OTHER", x => x.KeyColumn("ID").Optional()
.Map(y => y.Column, "COL");
这工作正常,执行没有问题,但连接是错误的。
它创建一条SQL语句,将MY_ENTITY
的PK连接到表OTHER
中的KeyColumn
中指定的列。沿着线的东西:
select ... from MY_ENTITY e left outer join OTHER o on e.ID = o.ID
不过,我需要的连接是这样的:
select ... from MY_ENTITY e left outer join OTHER o on e.OTHER_ID = o.ID
如何实现这一目标?
谢谢!该投影是一个不错的主意,它直接解决了我的下一个问题:“如何正确坚持一个具有PK连接表的实体”? :-) – 2012-03-29 11:50:05