// POST api/setroutecordinates public void post(string appKey, [FromBody] string value) { SqlConnection con = new SqlConnection(ConfigurationManager.AppSettings["SqlConString"]); SqlCommand cmd; string val = value; RouteCordinates data = JsonConvert.DeserializeObject <RouteCordinates>(value); //RouteCordinates facebookFriends = new System.Web.Script.Serialization.JavaScriptSerializer().Deserialize<RouteCordinates>(value); // DateTime currentDateTime = new DateTime(); if (appKey == "ttpapikey.asxc123nju89mno0") { try { con.Open(); try { //cmd = con.CreateCommand(); foreach (Cordinate cor in data.cordinates) { cmd = new SqlCommand("sp_AddRouteCordinates", con); //cmd = new SqlCommand("INSERT INTO AssetLocationDet (assetId,latitude,longitude) VALUES (" + assetId + "," + lat + "," + lon + ")", con); cmd.CommandType = System.Data.CommandType.StoredProcedure; cmd.Parameters.Add(new SqlParameter("@routeId", data.routeId)); cmd.Parameters.Add(new SqlParameter("@seqNo", cor.seqNo)); cmd.Parameters.Add(new SqlParameter("@startlatitude", cor.startLat)); cmd.Parameters.Add(new SqlParameter("@startlongitude", cor.startLon)); cmd.Parameters.Add(new SqlParameter("@endlatitude", cor.endLat)); cmd.Parameters.Add(new SqlParameter("@endlongitude", cor.endLon)); cmd.ExecuteNonQuery(); //cmd.CommandText = "INSERT INTO AssetLocationDet (assetId,latitude,longitude) VALUES (" + assetId + "," + lat + "," + lon + ")"; } } catch (Exception ex) { throw ex.InnerException; } finally { if (con.State == System.Data.ConnectionState.Open) { con.Close(); } } } catch (Exception e) { throw e.InnerException; } } }
// GET api/getroutecordinates/5 public string Get(string appKey, string routeId) { SqlConnection con = new SqlConnection(ConfigurationManager.AppSettings["SqlConString"]); SqlCommand cmd; SqlDataReader reader = null; string outputJsonString = "{'RouteCordinates':["; string jsonStringConstructor = string.Empty; RouteCordinates data = new RouteCordinates(); if (appKey == "ttpapikey.asxc123nju89mno0") { try { con.Open(); try { cmd = new SqlCommand("sp_GetRouteInfo", con); cmd.CommandType = System.Data.CommandType.StoredProcedure; cmd.Parameters.Add(new SqlParameter("@routeId", routeId)); reader = cmd.ExecuteReader(); data.routeId = Convert.ToInt64(routeId); List <Cordinate> cList = new List <Cordinate>(); Cordinate c; while (reader.Read()) { { c = new Cordinate(); c.seqNo = Convert.ToInt32(reader["seqNo"].ToString()); c.startLat = reader["startLatitude"].ToString(); c.startLon = reader["startLongitude"].ToString(); c.endLat = reader["endLatitude"].ToString(); c.endLon = reader["endLongitude"].ToString(); //data.cordinates+ reader["startLatitude"].ToString() + "', 'endLatitude' : '" + reader["endLatitude"].ToString() + "','startLongitude' : '" + reader["startLongitude"].ToString() + "', 'endLongitude' : '" + reader["endLongitude"].ToString() + "'}"; cList.Add(c); } } data.cordinates = new List <Cordinate>(cList); } catch (Exception ex) { throw ex.InnerException; return("Error Occured"); } finally { if (con.State == System.Data.ConnectionState.Open) { con.Close(); } } } catch (Exception e) { throw e; return("Error Occured"); } } outputJsonString = JsonConvert.SerializeObject(data); return(JsonConvert.SerializeObject(data)); }
public ActionResult CreateRoute(string routeId, string routeName, string assetId, List <Cordinate> cordinates) { try { using (HttpClient httpClient1 = new HttpClient()) { if (routeName.Trim().Length > 0) { httpClient1.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); var pairs = new List <KeyValuePair <string, string> > { new KeyValuePair <string, string>("appKey", "ttpapikey.asxc123nju89mno0"), new KeyValuePair <string, string>("routeName", routeName), new KeyValuePair <string, string>("userName", "admin"), }; var content = new FormUrlEncodedContent(pairs); var client = new HttpClient { BaseAddress = new Uri("http://sanjayjdm.apphb.com") }; var response = client.PostAsync("/api/createroute?appKey=ttpapikey.asxc123nju89mno0&routeName=" + routeName.Trim() + "&userName=admin", null).Result; routeId = GetRouteIdFromRouteName(routeName); } AssignAssetTotheRoute(routeId, assetId); var routeCordinates = new RouteCordinates(); routeCordinates.routeId = routeId; routeCordinates.cordinates = new List <Cordinate>(); routeCordinates.cordinates = cordinates; string jsonStringUsingJconvert = "=" + JsonConvert.SerializeObject(routeCordinates); HttpWebRequest HttpWReq = (HttpWebRequest)WebRequest.Create("http://sanjayjdm.apphb.com/api/setroutecordinates?appkey=ttpapikey.asxc123nju89mno0"); ASCIIEncoding encoding = new ASCIIEncoding(); byte[] data = encoding.GetBytes(jsonStringUsingJconvert); HttpWReq.ContentType = "application/x-www-form-urlencoded"; HttpWReq.Method = "POST"; HttpWReq.ContentLength = data.Length; Stream newStream = HttpWReq.GetRequestStream(); newStream.Write(data, 0, data.Length); newStream.Close(); WebResponse myWebResponse = HttpWReq.GetResponse(); } } catch (WebException wex) { var httpResponse = wex.Response as HttpWebResponse; if (httpResponse != null) { throw new ApplicationException(string.Format( "Remote server call {0} {1} resulted in a http error {2} {3}.", "POST", "set route coorinates API", httpResponse.StatusCode, httpResponse.StatusDescription), wex); } else { throw new ApplicationException(string.Format( "Remote server call {0} {1} resulted in an error.", "POST", "set route coorinates API"), wex); } } catch (Exception exep) { throw new Exception(exep.Message); } /*MemoryStream stream1 = new MemoryStream(); * DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(RouteDetails)); * * ser.WriteObject(stream1, routeDetails); * * stream1.Position = 0; * StreamReader sr = new StreamReader(stream1); * string jsonString = sr.ReadToEnd(); * return Content(jsonString);*/ return(Content("success")); }