【发布时间】:2009-02-09 09:44:23
【问题描述】:
在我的数据库中,我有一个包含逗号分隔的电子邮件列表的字段。我如何将其映射到我的模型中的 IList<string> ?
【问题讨论】:
在我的数据库中,我有一个包含逗号分隔的电子邮件列表的字段。我如何将其映射到我的模型中的 IList<string> ?
【问题讨论】:
您应该实现IUserCollection,它将您的 CSV 列映射到实际的电子邮件列表,然后在保存时将其序列化。
【讨论】:
有问题的表格甚至不是第一范式,这很糟糕。
您可以做到这一点的唯一方法是遵循以下原则:
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 属性。
编辑
另一种解决方案是实现您自己的IUserType 或IUserCollection。这样你的模型会更漂亮。
【讨论】: