Files
IM_NEW/DomainCommons/AggregateRootEntity.cs
2026-05-09 17:06:30 +08:00

25 lines
667 B
C#

namespace IM.DomainCommons
{
public class AggregateRootEntity : BaseEntity, IAggregateRoot, ISoftDelete, IHasCreationTime, IHasDeletionTime, IHasModificationTime
{
public bool IsDeleted { get; private set; }
public DateTimeOffset CreationTime { get; private set; } = DateTime.Now;
public DateTimeOffset? Deletion { get; private set; }
public DateTimeOffset? ModificationTime { get; set; }
public void SoftDelete()
{
Deletion = DateTime.Now;
IsDeleted = true;
}
public void NotifyModified()
{
ModificationTime = DateTime.Now;
}
}
}