Ejemplo n.º 1
0
        public static Result <Employee> Create(string firstName, string lastName, EmploymentRole role)
        {
            var name = EmployeeName.Create(firstName, lastName);

            if (name.IsFailure)
            {
                return(Result.Fail <Employee>(name.Error));
            }

            if (role == null)
            {
                return(Result.Fail <Employee>("EmploymentRole cannot be null"));
            }

            return(Result.Ok(new Employee(name.Value, role)));
        }
Ejemplo n.º 2
0
 public virtual Result ChangeName(string firstName, string lastName)
 {
     return(EmployeeName.Create(firstName, lastName)
            .OnSuccess(r => Name = r));
 }
Ejemplo n.º 3
0
 private Employee(EmployeeName name, EmploymentRole role) : this()
 {
     Name           = name;
     EmploymentRole = role;
 }