public Reservation Map() { var reservation = new Reservation(); reservation.Start = Start; reservation.End = End.AddDays(WeeksCount * 7); reservation.Subject = Subject; reservation.ReservationDays = WeekDays.GetDays(); reservation.Room = new Room(); reservation.Room.Number = RoomNumber?.Split('/').Last().Trim(); if (RoomNumber.Contains('/')) { var floorStr = RoomNumber.Split('/').First().Trim(); int.TryParse(floorStr, out var floor); reservation.Room.Floor = floor; } int.TryParse(BuildingNumber, out var bn); reservation.Room.Building = new Building() { Number = bn }; return(reservation); }