将实体传递到其他层? (ddd noob)

| 我正在探索敏锐的体系结构,并且已经看到它实际上是将实体传递到其他层(直到表示层)。它不应该公开实体的接口以使其更松散地耦合吗?还是我错过了什么?     
已邀请:
我相信您可以通过多种方式实践DDD,最​​重要的是实际查看您的项目需求和情况。如果要在asp.net MVP或MVC Web应用程序上实际使用DDD,则该应用程序可能不会与其他外部系统通信。然后使用服务层和DTO对象只是为了不让表示层知道有关该域的任何信息就可能是过大的。最重要的是,您隐藏/删除了有关实体创建,域逻辑和可能的知识,以使实体处于无效状态。所有这些都可以通过良好的Domain实体api实现。然后我觉得将实体发送到表示层是一个好习惯。您还可以使用存储库在表示层的Controller / Presenter类中加载实体。 如果查看许多DDD示例,您会发现人们倾向于选择最适合他们的方法。 我从未见过任何通过接口公开实体的示例和实践。仅通过内部,受保护和只读属性就可以实现很多目标。这将隐藏表示层的api功能。 /最好的问候BacceSR     

要回复问题请先登录注册