geektime
geektime copied to clipboard
老师你微服务实战篇的源码在哪里啊,你讲的时候拉得太快看不清楚源码,能提供个我看看吗 github上面的不是第二篇的
先说下我目前对仓储的理解 仓储目的是隔离业务和 持久化操作的部分,减少因为ORM组件的变换导致的一些修改 ddd的理论建议 聚合根 才能使用仓储 问题来了 如果是只有聚合根才能使用仓储, 我需要操作根上的实体的时候怎么实现呢? 这一点我比较疑惑,一直也没找到可以参考的实现,请老师指点下🙂
肖老师:您好! 最近做项目时,在使用Entity Framework Core配置好聚合根映射关系后,发现在生成表及加载数据时有很多问题,希望能听听您的意见。 场景:因为聚合根拥有一些从属值对象,并且值对象内还会有嵌套,根据官方文档,这类映射配置是没有问题的,并且从属的值对象都和聚合根对象保存到一张表里(一对一关系),映射配置如以下: buillder.ToTable("table_name"); builder.HasKey(p => p.Id); builder.Property(p => p.Name).IsRequired().HasMaxLength(20).HasColumnName("name"); builder.OwnsOne(p => p.XXX, x => { x.Porperty(p => p.aa).IsRequired().HasMaxLength(5).HasColumnName("aa"); x.OwnsOne(p => p.YYY, y => { y.Property(p => p.bb).IsRequired().HasMaxLength(20).HasColumnName("bb");...
在Ordering 微服务demo中,CMD Handler在Application层调用仓储repo并提交事务,只是最基本的create 操作。而在大多数业务场景中,会有更复杂的业务逻辑,比如验证唯一性或者复杂计算甚至跨聚合的一些查询,这些也在App层的CMD Handler中实现吗?如果将这些核心领域逻辑代码放到App层,DDD分层不就会慢慢变成传统的三层架构模型了么?DDD 中 Domain层包含聚合,充血模型的实体,领域事件,仓储以及领域服务,但是课程中并没有提到领域服务。希望老师为我解惑~~
包括但不限于: 关于示例代码的问题 关于微服务架构的问题 关于领域驱动设计的问题