0
在我的数据库我有场方含逗号分隔的电子邮件列表。我如何将其映射到我的模型中的IList<string>
?流利,NHibernate的映射
在我的数据库我有场方含逗号分隔的电子邮件列表。我如何将其映射到我的模型中的IList<string>
?流利,NHibernate的映射
问题的表甚至不是第一范式,这是不好的。
你都不可能做到这一点的唯一方法是沿着这些路线的东西:
class Foo
{
private List<string> emails = new List<string>();
public string _Emails
{
get { return string.Join(",", emails.ToArray()); }
set { emails = new List<string>(value.Split(',')); }
}
public IList<string> Emails
{
get { return emails; }
}
}
和地图_Emails
财产。
编辑
还有一个方案是FPGA实现自己IUserType
或IUserCollection
。因此你的模型会更漂亮。
您应该实现一个IUserCollection
,这将您的CSV列映射到电子邮件的实际列表,然后将其序列化回救。
嗯,有时候你是不是负责设计的数据库。 您的解决方案将与一些调整(客户端必须能够地址添加到电子邮件领域也一样)的工作,但我希望的某种类型的用户定义的映射。 我不是很热衷于污染我的模型:) – BjartN 2009-02-09 10:16:36