我正在使用C#和nHibernate为我的数据库持久性构建一个博客。我想使条目可标记,所以我有一个IList用于tags属性。但是,如何将其映射到数据库中单个列中的逗号分隔列表?
我想避免为标记使用单独的表,只是将它们作为单独的列表保存在一列中。所以我基本上试图将数据库中逗号分隔的列表映射到IList属性。这可能在nHibernate中吗?
答案 0 :(得分:5)
是的,这是可能的:
http://www.codewrecks.com/blog/index.php/2008/10/21/some-details-on-older-post-about-usertype/
将该文件添加到程序集中,然后在映射文件中引用它:
<property name='ListAsStringProperty'
type='namespace.StringListUserType, assembly' />
映射的属性应该是一个简单的集合(List或IList),覆盖char分隔符以使其成为逗号。