将简单类型的数组序列化为单个数据库字段

时间:2013-03-29 16:16:23

标签: nhibernate fluent-nhibernate

是否可以配置NHibernate(特别是Fluent NHibernate)将一组简单类型序列化为单个数据库列?我似乎记得这是可能的,但自从我使用NHibernate以来已经有一段时间了。

基本上我需要存储一个人工作的星期几(int[]),而不是为了这个目的而没有单独的表。

2 个答案:

答案 0 :(得分:1)

有可能。

您需要实现一个IUserType来处理您的数组和数据列之间的映射(首先是谷歌;有可能是某人已经实现了它)

或者,您可以在实体类中进行转换,并映射单字段表示而不是属性。例如:

string numbers;

public int[] Numbers
{
    get { return numbers.Split(','); }
    set { numbers = string.Join(",", value.Select(x => x.ToString())); }
}

答案 1 :(得分:0)

是。这种情况有UserType。您也可以使用枚举和bit flag