public Route GetRoute(Route r) { try { using (SqlConnection connection = new SqlConnection(connectionString)) { connection.Open(); SqlCommand command = new SqlCommand(GetRouteQuery, connection); command.Parameters.AddWithValue("@routeId", r.RouteID); SqlDataReader reader = command.ExecuteReader(); while (reader.Read()) { r.RouteName = Convert.ToString(reader["route_name"]); r.IsPrivate = Convert.ToBoolean(reader["is_Private"]); } reader.Close(); command = new SqlCommand(GetWaypointsQuery, connection); command.Parameters.AddWithValue("@routeId", r.RouteID); reader = command.ExecuteReader(); while (reader.Read()) { r.AddWaypoint(Convert.ToString(reader["waypoint_position"])); r.AddTime(Convert.ToDateTime(reader["stop_time"])); } reader.Close(); command = new SqlCommand(GetUsersQuery, connection); command.Parameters.AddWithValue("routeId", r.RouteID); reader = command.ExecuteReader(); while (reader.Read()) { r.AddUser(Convert.ToString(reader["email_address"])); } return(r); } } catch (Exception ex) { throw ex; } }