我一直试图围绕 DDD 以及它如何与 MVC 关联起来,但我在实体识别方面遇到了麻烦。
特别是,我试图保持我的表示、域和数据模型之间的严格分离。我的问题在于我如何跨这些边界保存实体标识。澄清一下,我使用不同的类来表示不同上下文中的同一实体 - 例如,我有一个“ShipmentRequest”域类、几个“ShipmentRequestView”表示类(取决于特定视图所需的属性)和一个'shipment_request' 数据库表(我的数据模型)。
我觉得使用“ID”属性(如 ShipmentRequestId)会违反我试图实现的分离,因为此 ID 属性是数据库问题,而不是域问题;而且我不想在层之间传递相同的对象,因为这意味着将不需要的数据传递到我的表示层。
我如何保持这种分离,同时跟踪这些层之间的身份?