将多值字段映射到IList<>使用FluentHibernate

时间:2010-09-16 08:41:27

标签: nhibernate fluent-nhibernate

我有以下问题:

我们在DB中有多值字段,如ProductLineIdList,它存储用逗号分隔的每个允许的productLines(例如“2,13,27,33”)。我想将此字段映射到IList(列出4个实体)。有可能吗? THX

1 个答案:

答案 0 :(得分:1)

如何将productLines保存为字符串,然后使用非映射属性返回产品系列列表?我怀疑你很难用纯净的NHibernate来解决这个问题。

public class Product
{
    // protected so we can't see this
    protected virtual string productLines { get; set; } 

    // instruct NHibernate to ignore this property!
    public IList<string> ProductLines 
    { 
        get 
        { 
            if (!string.IsNullOrEmpty(productLines))
            {
                return productLines.Split(',').ToList();
            }
            else
            {
                return new List<string>();
            }
        }
    }
}