代码之家  ›  专栏  ›  技术社区  ›  Tisha Anand

领域驱动设计——对用户注册过程进行建模。NET核心

  •  0
  • Tisha Anand  · 技术社区  · 2 年前

    我正在学习DDD,并尝试使用域驱动设计对用户注册过程进行建模。让我们想象一个晚宴托管系统,其中Host和Guest是两个实体。主持人将是在系统中创建晚宴的人,客人将加入晚宴,向主持人支付账单,对晚宴进行评分等。主持人和客人都将是晚宴主持系统的用户。我创建了三个实体,如下所示:

    • 主机(id、First_Name、Last_Name、电子邮件、手机…)
    • 客人(id、名字、姓氏、电子邮件、手机…)
    • 用户(id、User_type(Guest或Host)、Joining_Date、Status…)

    在这里,我看到一个用户不能单独存在。它将永远是主人或客人。所以在这个系统中,应该有两个聚合根——Host和Guest。用户实体将是每个聚合的一部分。

    此外,用户将按以下方式注册

    输入手机号码并提交

    • 将向用户发送OTP
    • OTP将由系统提交并验证
    • 在下一个屏幕上,用户将输入并提交他的名字、姓氏、电子邮件和性别

    由于完整的用户信息是分步骤收集的,因此,由于用户可以在注册过程中杀死应用程序,因此,在成功完成最后一步之前,用户/主机/访客实体不应对系统有效,我如何使用DDD创建/保存用户/主机/访客实体?

    0 回复  |  直到 2 年前
        1
  •  0
  •   kargarf    2 年前

    web应用程序的用户注册系统的中心业务实体是用户。为了保持数据的持久性,RegisterUser用例与UserRepository接口交互并验证输入数据。

    用于存储用户数据的数据库驱动程序和用于管理HTTP请求的web框架是包括在外部框架(也称为驱动程序层)中的组件的示例。因此,User是一个聚合根,主机和来宾都是为此而继承和嵌套的。

    另一个聚合根实体是Dinner,不同种类的晚餐菜单将从中继承。

    了解更多信息 Click

    推荐文章