领域驱动设计案例之领域层实体与聚合根实现

时间:2022-02-19 05:44:43

在领域层中,可以实现实体与聚合根的业务逻辑,在实现业务逻辑之前,我们首先要确定实体和聚合根的一些基本行为,比如判断实体是否相等。关于领域对象的具体业务逻辑实现,因为涉及到要与数据库交互,所以等看完仓储的实现后,再实现领域对象的业务逻辑。

using System;
using Order.Domain.Aggreate;

namespace Order.Domain.Model
{
    public abstract class Entity : IEntity
    {
        private Guid id = Guid.NewGuid();
        public Guid Id { get { return id; } }
        public override bool Equals(object obj)
        {
            if (obj == null)
                 return false;
            if (ReferenceEquals(this, obj))
                return true;
            return this.Id == (obj as IEntity).Id;

        }
        public override int GetHashCode()
        {
            return this.Id.GetHashCode();
        }
    }
}
namespace Order.Domain.Model
{
    public abstract class AggreateRoot:Entity
    {
    }
}

 欢迎加入QQ讨论群:309287205