使用EF保留简单域实体和ID集合

时间:2013-08-20 15:51:11

标签: entity-framework

在我自己的项目中,我使用RavenDB。在工作中,我使用SQL Server和Entity Framework(代码优先)。

因此,设计域实体是一项挑战,因为我非常喜欢RavenDB创建以应用程序为中心的DDD样式应用程序的能力,它与数据库实现完全无关。

目前我正在尝试持有一个实体,该实体具有引用系统中其他实体的GUID集合。例如(不是实际的类,但是相同的概念):

public class Thing
{
    public Thing()
    {
        this.VisibleSectionIds = new Collection<Guid>();
    }

    public Guid Id { get; set; }

    public string Name { get; set; }

    public ICollection<Guid> VisibleSectionIds { get; set; }
}

使用RavenDB,我可以将其保存在几行代码中,而无需重新设计数据库。我甚至可以将我的ID集合设为只读。

人们可以提出一些方法,我可以在EF中做类似的事情,而不会将映射属性引入其他实体(这会破坏我的DDD方法并可能引入N + 1问题)。我可以使用EF将我的GUID集合转换为数据库中的文本数据类型并将其转换回来吗?

0 个答案:

没有答案