/// <summary> /// 得到一个对象实体 /// </summary> public gps GetModel(string lng, string lat) { StringBuilder strSql = new StringBuilder(); strSql.Append("select top 1 id,lng,lat,offset_x,offset_y,offset_lng,offset_lat "); strSql.Append(" FROM gps "); strSql.Append(" where lng=@lng and lat=@lat"); SqlParameter[] parameters = { new SqlParameter("@lng", SqlDbType.VarChar), new SqlParameter("@lat", SqlDbType.VarChar) }; parameters[0].Value = lng; parameters[1].Value = lat; gps model = new gps(); DataSet ds = DbHelperSQL.Query(strSql.ToString(), parameters); if (ds.Tables[0].Rows.Count > 0) { if (ds.Tables[0].Rows[0]["id"].ToString() != "") { model.id = int.Parse(ds.Tables[0].Rows[0]["id"].ToString()); } model.lng = ds.Tables[0].Rows[0]["lng"].ToString(); model.lat = ds.Tables[0].Rows[0]["lat"].ToString(); model.offset_x = ds.Tables[0].Rows[0]["offset_x"].ToString(); model.offset_y = ds.Tables[0].Rows[0]["offset_y"].ToString(); model.offset_lng = ds.Tables[0].Rows[0]["offset_lng"].ToString(); model.offset_lat = ds.Tables[0].Rows[0]["offset_lat"].ToString(); } return(model); }
public void ConvertLngLat(string lng, string lat, out string newlng, out string newlat) { string olng = lng; string olat = lat; lng = lng.Substring(0, lng.IndexOf(".") + 2); lat = lat.Substring(0, lat.IndexOf(".") + 2); gps gpsbll = new gps(); int i = 0; string lngtemp = lng; string lattemp = lat; double j = 0.1; gps model = null; model = gpsbll.GetModel(lngtemp, lattemp); while (model == null) { switch (i) { case 0: lngtemp = (Convert.ToDouble(lng) + j) + ""; i++; break; case 1: lattemp = (Convert.ToDouble(lat) + j) + ""; i++; break; case 2: lngtemp = (Convert.ToDouble(lng) - j) + ""; i++; break; case 3: lattemp = (Convert.ToDouble(lat) - j) + ""; i++; break; case 4: lngtemp = (Convert.ToDouble(lng) + j) + ""; lattemp = (Convert.ToDouble(lat) + j) + ""; i++; break; case 5: lngtemp = (Convert.ToDouble(lng) - j) + ""; lattemp = (Convert.ToDouble(lat) - j) + ""; i++; break; case 6: lngtemp = (Convert.ToDouble(lng) + j) + ""; lattemp = (Convert.ToDouble(lat) - j) + ""; i++; break; case 7: lngtemp = (Convert.ToDouble(lng) - j) + ""; lattemp = (Convert.ToDouble(lat) + j) + ""; i = 0; j = j + 0.1; break; default: break; } model = gpsbll.GetModel(lngtemp, lngtemp); } newlng = (Convert.ToDouble(olng) + Convert.ToDouble(model.offset_lng)) + ""; newlat = (Convert.ToDouble(olat) + Convert.ToDouble(model.offset_lat)) + ""; }