使用Fluent N Hibernate映射数组

本文关键字:映射 数组 Hibernate Fluent 使用 | 更新日期: 2023-09-27 18:12:44

我不确定是否fluent n hibernate可以做到这一点,但我不知道如何。

我有一个表- 案例和一些属性

ownerId, brokerId, shipperId

我想把它映射到我的属性:

int [] OrgsWithAccess

这可能吗?

这样,当我检查一个组织是否有访问的情况下,我可以检查属性OrgsWithAccess而不是OwnerId == myorg。id或brokerId == myorg。div id等。

如果我正确理解了你的问题,我不建议你尝试用你问的方式进行映射。

cases表看起来像是其他表之间的某种形式的连接表。我将假设这些其他表每个都包含在应用程序中表示为实体的数据,并且有三个表,Owner, BrokerShipper

OrgsWithAccess应该使用引用映射到它在应用程序中拥有的实体,即假设类看起来像

public class OrgsWithAccess
{
    public virtual Owner { get; set; }
    public virtual Broker { get; set; }
    public virtual Shipper { get; set; }
}

那么映射将看起来像

public class OrgsWithAccessMap : ClassMap<OrgsWithAccess>
{
    public OrgsWithAccessMap()
    {
        References(x => x.Owner);
        References(x => x.Broker);
        References(x => x.Shipper);
    }
}

那么在查询时,您只需查看OrgsWithAccess

上的属性
session.QueryOver<OrgsWithAccess>().Where(x => x.Owner.Id == id);

使用Fluent N Hibernate映射数组