Harkon Δημοσ. 8 Απριλίου 2009 Δημοσ. 8 Απριλίου 2009 χαίρεται, προσπαθώ να παίξω με google maps και εμφάνιση pins στον χάρτη έχοντας μόνο τις διευθύνσεις οπότε πάω στην χρήση Geocoding. να πω την αλήθεια το περίμενα ευκολότερο, μάλλον πιο απλό. ψάχνοντας στο διαδίκτυο δοκίμασα την λύση του http://www.codeproject.com/KB/scrapbook/ask_GoogleMap_Geocoder.aspx χρησιμοποιώντας τις βιβλιοθήκες αυτές κατάφερα να το κάνω να δουλέψει αλλά το μεγάλο μου πρόβλημα είναι πως είναι υπερβολικά αργό! έχω ένα dropdown list που επιλέγει την κατηγορία σημείων προς εμφάνιση και κάνει υπερβολικά πολύ να ενημερώσει. Ο κώδικας είναι παρακάτω. Υπάρχει κάτι πιο γρήγορο γενικά ή αν βλέπετε κάποιο λάθος/βελτίωση θα σας ήμουν υπόχρεως. ευχαριστώ. > SqlConnection MyConnection = new SqlConnection(@"Data Source=..; Initial Catalog = ..; Integrated Security=true"); MyConnection.Open(); string sql; SqlCommand MyCommand = new SqlCommand(sql, MyConnection); SqlDataReader MyDataReader = MyCommand.ExecuteReader(CommandBehavior.CloseConnection); GoogleMapForASPNet1.GoogleMapObject.Points.Clear(); while (MyDataReader.Read()) { string xml = GMapGeocoder.Util.GetXml(MyDataReader[2].ToString() + ", 41500", ConfigurationManager.AppSettings["GoogleAPIKey"]); GMapGeocoder.Generated.kml kml = GMapGeocoder.Util.DeserializeXml(xml); if (kml.Response.Placemark != null) { string lan = kml.Response.Placemark[0].Point.coordinates; string fullAddress = kml.Response.Placemark[0].address; string countryCode = kml.Response.Placemark[0].AddressDetails.Country.CountryNameCode; string stateCode = kml.Response.Placemark[0].AddressDetails.Country. AdministrativeArea.AdministrativeAreaName; string[] tmp = lan.Split(','); GooglePoint GP = new GooglePoint(); GP.ID = myId; //dilomeno parapanw GP.Latitude = Convert.ToDouble(tmp[1].Replace('.', ',')); GP.Longitude = Convert.ToDouble(tmp[0].Replace('.', ',')); GP.InfoHTML = "This is point " + myId; GoogleMapForASPNet1.GoogleMapObject.Points.Add(GP); }//end if }//end while MyConnection.Close();
Harkon Δημοσ. 8 Απριλίου 2009 Μέλος Δημοσ. 8 Απριλίου 2009 η sql που κολαει οι διευθύνσεις είναι αποθηκευμένες σε sql server οπότε η μεταβλητή sql είναι το ερώτημα που φέρνει τις διευθύνσεις αυτές οι οποίες και μπαινουν στο loop για να πάρω τις συντεταγμένες τους και να προσθέσω το σημείο στον χάρτη.
Evgenios1 Δημοσ. 8 Απριλίου 2009 Δημοσ. 8 Απριλίου 2009 Αυτο ειναι API ή καλυτερα να το πω "ετυμο control" διαβασε αυτα που λεει ο δημιουργος του. Αν ψαξεις , εχει καμια δεκαρια απο δαυτα. Τωρα που το ειδα καλυτερα.. Διαβασε πος δουλεβει το Google map και φτιαξε ενα δικο σου api, με webrequest θα δουλεψεις. ΥΓ: Εχω φτιαξει ενα api για το flikr.com
Elric_The_Melnibonian Δημοσ. 10 Απριλίου 2009 Δημοσ. 10 Απριλίου 2009 πόσα είναι τα Pins που προσπαθείς να δημιουργήσεις ? Δεν θα μπορούσες μαζί με τις διευθύνσεις να κρατήσεις και τα GLatLng σε κάποιο πεδίο ώστε να μην τα ζητάς κατα τη δημιουργία του map κάθε φορά ?
Harkon Δημοσ. 10 Απριλίου 2009 Μέλος Δημοσ. 10 Απριλίου 2009 πόσα είναι τα Pins που προσπαθείς να δημιουργήσεις ? Δεν θα μπορούσες μαζί με τις διευθύνσεις να κρατήσεις και τα GLatLng σε κάποιο πεδίο ώστε να μην τα ζητάς κατα τη δημιουργία του map κάθε φορά ? καλησπέρα και σε ευχαριστώ για την απάντησή σου, ακόμα παιδεύομαι με δαύτο. είναι αρκετά τα πινς (περίπου 200 αν θεωρούνται πολλά) και έχω μόνο τις διευθύνσεις. ίσως να έχεις και δίκιο και να δοκιμάσω να κάνω μια αρχικοποίηση παίρνοντας τις συντεταγμένες και βάζοντάς τις στην βάση. απλά θα με ενδιέφερε να βρω και συνολικά μια καλή λύση για το geocoding. και πάλι ευχαριστώ
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.