1

用户配置文件在系统上具有配置文件属性。该属性可以是不同的类型(AboutYou、Occupation、AnyhingElse)。

现在我想建立适当的关系:

  1. 配置文件和配置文件属性
  2. 配置文件属性和配置文件属性类型(我不想使用枚举作为数据类型)

配置文件.cs

public List<ProfileAttribute> Attributes {get; set;}

配置文件属性.cs

// holds user entered response on particular subject
// describe yourself (if aboutYou type is selected)
public string Response {get; set;}
public ProfileAttributeType {get; set;}

ProfileAttributeType.cs

public List<ProfileAttribute> Attributes {get; set;}
public string AttributeType {get; set;}

这是遗留代码和数据库,我正在尝试使用 ddd 方法构建应用程序并生成数据库表,所以我坚持以下。

Profile有多ProfileAttribute。所以我有one to many通过个人资料方面。

我无法通过ProfileAttribute侧面计算关系。所有配置文件属性都属于一个配置文件还是属于many to many?这个 Response 属性让我感到困惑。你会怎么做?

此外,对于 ProfileAttribute 和 ProfileAttributeType 我有以下

一个ProfileAttribute有很多AttributeType通过ProfileAttribute边,通过ProfileAttribute边我有many to one(许多类型可以属于许多 ProfileAttributes)

4

1 回答 1

1

ProfileAttributeType首先,它本身包含一个集合似乎很奇怪ProfileAttribute。也许它会有一组专用类型的属性?

就 和 之间的关系而言ProfileProfileAttribute属性应该是与配置文件聚合关联的值对象。这意味着关系是一对多的。换句话说,一个配置文件可以包含许多属性,但是一个属性属于单个配置文件。属性本身可以按属性类型分组。如果存在与属性类型相关联的行为,则属性类型本身可以是实体集合。

于 2013-02-25T22:43:48.033 回答