public Floor GetFloorWithBlocksAndRooms(int floorId) { _logger.LogInfo($"Getting floor with blocks and rooms by floor Id {floorId}"); var query = "SELECT * FROM [Floors] WHERE [Id] = " + floorId; var floor = new Floor(); var dormitoryId = 0; using (var reader = _dbConnection.ExecuteReader(query)) { while (reader.Read()) { floor = new Floor() { Id = Convert.ToInt32(reader["Id"]), Number = Convert.ToInt32(reader["Number"]), Blocks = _blockService.GetBlocksByFloorId(floorId), Rooms = _roomService.GetRoomsByFloorId(floorId) }; dormitoryId = Convert.ToInt32(reader["DormitoryId"]); } } floor.Dormitory = GetDormitoryById(dormitoryId); return(floor); }