Код IT
← Каталог

Типы классов в DDD — Entity (сущность)

Фрагмент из «Типы классов в DDD»: Entity (сущность).

csharp projectencyclopedia7-06-proektirovanie-i-arhitektura-1141 embed URL статья в энциклопедии
C# main.cs
public sealed class Customer
{
    public CustomerId Id { get; }
    public Email Email { get; private set; }
    public CustomerStatus Status { get; private set; }

    public void ConfirmEmail(Email confirmed)
    {
        if (Status != CustomerStatus.Pending)
            throw new DomainException("Подтверждение доступно только для ожидающих аккаунтов.");
        Email = confirmed;
        Status = CustomerStatus.Active;
    }
}
public sealed class Customer
{
    public CustomerId Id { get; }
    public Email Email { get; private set; }
    public CustomerStatus Status { get; private set; }

    public void ConfirmEmail(Email confirmed)
    {
        if (Status != CustomerStatus.Pending)
            throw new DomainException("Подтверждение доступно только для ожидающих аккаунтов.");
        Email = confirmed;
        Status = CustomerStatus.Active;
    }
}