1

等级制度:

  • 抽象包
  • 服务器包:包
  • 客户端包:服务器包

就 EF CF 而言,所有三个表都具有一对一的关系。我是否选择了正确的构图来满足以下情况?

设想:

  • 抽象包是由服务器根据请求创建的,具有唯一的 Guid。
  • 服务器创建 ServerPackage 并发送给客户端。
  • 客户端处理 ServerPackage 并创建一个 ClientPackage 以发送回服务器。

换句话说,一旦一个包请求进来,一个 ServerPackage 和一个 ClientPackage 应该被创建。我假设这不起作用,因为我需要将两个包都绑定到同一个抽象包 ID。

我应该使用组合而不是继承并强制建立一对一的关系吗?

请指教。

4

1 回答 1

1

只有当你所有的包都是同一个实例时它才会起作用=>当服务器收到请求时它必须立即创建ClientPackage。它无法创建Package,因为Package它是抽象的,如果它只创建ServerPackage,您将无法ClientPackage使用相同的 ID 创建。所以看起来你的整个继承在这种情况下都是多余的。

如果您想遵循您的工作流程,您需要组合。

于 2012-05-05T08:26:33.547 回答