2

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

本质上,我需要存储一个人工作的星期几(int[]),并且不想为此目的而有一个单独的表。

4

2 回答 2

1

有可能的。

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

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

string numbers;

public int[] Numbers
{
    get { return numbers.Split(','); }
    set { numbers = string.Join(",", value.Select(x => x.ToString())); }
}
于 2013-03-29T18:07:17.277 回答
0

是的。有UserType这样的场景。你也可以使用 enum 和bit flag.

于 2013-03-29T16:52:53.493 回答