public static void Main() { IAddressBuilder addressBuilder = new AddressBuilder(); IUserBuilder userBuilder = new UserBuilder(addressBuilder); var user = userBuilder .WithName("Name") .WithSurname("Surname") .WithEmail("*****@*****.**") .WithCity("City") .WithState("State") .WithCountry("Country") .Build(); Console.WriteLine($"Name: {user.Name}"); Console.WriteLine($"Surname: {user.Surname}"); Console.WriteLine($"Email: {user.Email}"); Console.WriteLine($"City: {user.Address.City}"); Console.WriteLine($"State: {user.Address.State}"); Console.WriteLine($"Country: {user.Address.Country}"); Console.ReadKey(); }
public IUserBuilder WithState(string state) { AddressBuilder.WithState(state); return(this); }
public IUserBuilder WithCity(string city) { AddressBuilder.WithCity(city); return(this); }
public IUserBuilder WithCountry(string country) { AddressBuilder.WithCountry(country); return(this); }
public IUserBuilder WithAddress(Action <IAddressBuilder> addressBuilder) { addressBuilder(AddressBuilder); User.Address = AddressBuilder.Build(); return(this); }