public string firstname { get; set; }
public string lastname { get; set; }
public int totalprice { get; set; }
public bool depositpaid { get; set; }
public BookingDates bookingdates { get; set; }
public string additionalneeds { get; set; }
public class BookingDates
public string checkin { get; set; }
public string checkout { get; set; }
public class Bookings : Booking
public int bookingid { get; set; }
public class BookingBuilder
private Bookings booking = new Bookings();
public BookingBuilder WithBookingId(int id)
public BookingBuilder WithFirstName(string fName)
booking.firstname = fName;
public BookingBuilder WithLastName(string lName)
booking.lastname = lName;
public BookingBuilder WithTotalPrice(int tPrice)
booking.totalprice = tPrice;
public BookingBuilder WithDepositPaid(bool dPaid)
booking.depositpaid = dPaid;
public BookingBuilder WithBookingDates(string chkIn, string chkOut)
booking.bookingdates = new BookingDates
public BookingBuilder WithAdditionalNeeds(string addNeeds)
booking.additionalneeds = addNeeds;
public static void Main()
Console.WriteLine("Hello World");
var objBooking = new BookingBuilder()
.WithBookingDates("2022-10-10", "2022-12-10")
.WithAdditionalNeeds("Breakfast")
Console.WriteLine(objBooking.bookingdates.checkin.ToString());
var json = JsonConvert.SerializeObject(objBooking, Formatting.Indented);