public static List <UserForMap> getUsersNearby(SqlConnection sqlConnection, UsersNearbyFilter usersFilter, int id) { sqlConnection.Close(); SqlCommand cmd = new SqlCommand(USERS_PROCEDURE, sqlConnection); cmd.CommandType = System.Data.CommandType.StoredProcedure; cmd.Parameters.AddWithValue(USERS_PROC_LAT, usersFilter.Latitude); cmd.Parameters.AddWithValue(USERS_PROC_LNG, usersFilter.Longitude); cmd.Parameters.AddWithValue(USERS_PROC_MAX_DISTANCE, usersFilter.MaxDistance); cmd.Parameters.AddWithValue(USERS_PROC_ID, id); sqlConnection.Open(); List <UserForMap> users = new List <UserForMap>(); using (SqlDataReader reader = cmd.ExecuteReader()) { while (reader.Read()) { UserForMap user = new UserForMap(); user.Id = reader.GetInt32(0); user.UserName = reader.GetString(1); user.Mail = reader.GetString(3); if (!reader.IsDBNull(4)) { user.City = reader.GetString(4); } if (!reader.IsDBNull(5)) { user.Latitude = (double)reader.GetDecimal(5); } if (!reader.IsDBNull(6)) { user.Longitude = (double)reader.GetDecimal(6); } if (!reader.IsDBNull(7)) { user.VehicleMake = reader.GetString(7); } if (!reader.IsDBNull(8)) { user.VehicleModel = reader.GetString(8); } if (!reader.IsDBNull(9)) { user.Birthdate = reader.GetDateTime(9).ToShortDateString(); } if (!reader.IsDBNull(10)) { user.Distance = Math.Round(reader.GetDouble(10), 3, MidpointRounding.AwayFromZero); } users.Add(user); } } sqlConnection.Close(); return(users); }
public object getUsersNearby(UsersNearbyFilter usersFilter) { int loggedUserId = runAuthenticate(); if (loggedUserId > 0) { if (usersFilter != null) { return(DBUtils.getUsersNearby(sqlConnection, usersFilter, loggedUserId)); } else { //GeoPoint userLocation = DBUtils.getUserLocation(sqlConnection, loggedUserId); //return DBUtils.getUsersNearby(sqlConnection, userLocation, maxDistance, loggedUserId); WebOperationContext.Current.OutgoingResponse.StatusCode = System.Net.HttpStatusCode.BadRequest; return(new Status(false, "")); } } else { return(getAuthorizationErrorStatus(true)); } }
public void POST_users_nearby() { string url = string.Format(API_URL, "/users/nearby"); HttpWebRequest httpWebRequest = (HttpWebRequest)WebRequest.Create(url); httpWebRequest.Method = WebRequestMethods.Http.Post; httpWebRequest.Headers = LoginHeaders; httpWebRequest.ContentType = "application/json; charset=utf-8"; UsersNearbyFilter filter = new UsersNearbyFilter(50.041272, 21.999231, 40); string postJson = objectToJsonNew <UsersNearbyFilter>(filter); StreamWriter writer = new StreamWriter(httpWebRequest.GetRequestStream()); writer.Write(postJson); writer.Close(); HttpWebResponse httpWebResponse = (HttpWebResponse)httpWebRequest.GetResponse(); string jsonString = streamToString(httpWebResponse); object obj = jsonToObject <List <UserForMap> >(jsonString); Assert.IsInstanceOfType(obj, typeof(List <UserForMap>)); }