我有这些对象:
public class Entity
{
public virtual int Id { get; set; }
public virtual Lookup Type { get; set; }
public virtual string Name { get; set; }
}
public class Lookup
{
public virtual int Id { get; set; }
public virtual string Table { get; set; }
public virtual string Column { get; set; }
public virtual int Value { get; set; }
public virtual string Name { get; set; }
}
对象Entity.Type是一个整数,表示指向表Lookup.Value的“FK”,其中包含列Table和Column的过滤器,因此例如:
SELECT *
FROM [Entity] e
join [Lookup] l on l.Value = e.Type
where l.[Table] = 'Entity' and l.[Column] = 'Type'
您是否了解如何为其制作地图?我尝试过多对一,但是映射是在Entity.Type和Lookup.Id之间进行的,并且过滤在多对一中是不可能的
我正在使用Nhibernate V3.3.1.4000。