namespace OrpaonVision.Core.Domain; /// /// 实体基类。 /// public abstract class EntityBase { /// /// 主键ID。 /// public long Id { get; set; } /// /// 判断实体是否为临时实体(未持久化)。 /// public bool IsTransient => Id <= 0; /// /// 重写Equals方法。 /// public override bool Equals(object? obj) { if (obj is null || obj.GetType() != GetType()) { return false; } if (obj is EntityBase other) { return other.Id == Id; } return false; } /// /// 重写GetHashCode方法。 /// public override int GetHashCode() { return Id.GetHashCode(); } /// /// 重写ToString方法。 /// public override string ToString() { return $"{GetType().Name}#{Id}"; } }