25 lines
667 B
C#
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;
|
|
}
|
|
}
|
|
}
|