2 messaggi dal 18 aprile 2019
Buonasera, chiedo scusa, sono nuovo del forum e vorrei per favore ricevere un aiuto sul problema che ho nel visualizzare le mappe di Bing in una pagina aspx.
Se metto il seguente codice (preso da un vostro articolo) in una pagina Html di vs, il codice funziona benissimo e carica con velocità la mappa.
Se invece uso lo stesso codice in una pagina aspx, carica la base della mappa e dopo un paio di minuti tutto il resto. Potreste per favore aiutarmi?
Grazie mille in anticipo.
ecco il codice:

<%@ Page Language="VB" AutoEventWireup="true" CodeFile="Default.aspx.vb" Inherits="_Default" %>

<!DOCTYPE html>

<html >
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />


<script src='http://www.bing.com/api/maps/mapcontrol?callback=loadmap&setMkt=it-IT&setLang=it async defer'> </script>


<script src="jquery-1.11.1.js"></script>

<title></title>





</head>
<body onload="loadmap();">



<script type="text/javascript">

var map = null;
function loadmap() {
// $('#luogo').text('Benevento');

// $('#key').text('');


var luogo ="mio indirizzo";
var apikey = "miaapikey";

// alert(apikey);

if (map == null) {
// alert(apikey);
map = new Microsoft.Maps.Map(document.getElementById("mappa"), { credentials: apikey });

}

//Compongo l'url includendo il luogo e la chiave
var url = "http://dev.virtualearth.net/REST/v1/Locations?"
+ "q=" + encodeURIComponent(luogo)
+ "&key=" + apikey
+ "&jsonp=?";

//eseguo la richiesta ajax e leggo la risposta JSON
$.getJSON(url, function (data) {

if (data.resourceSets.length == 0 || data.resourceSets[0].resources.length == 0) {
alert("Nessun risultato trovato");
return;
}

var punto = data.resourceSets[0].resources[0].point;
var coordinate = new Microsoft.Maps.Location(
punto.coordinates[0],
punto.coordinates[1]);
$("#coordinate").text("lat " + coordinate.latitude + " lon " + coordinate.longitude);

//centro la mappa sulle coordinate ottenute
map.setView({ center: coordinate, zoom: 20 });


});
return false;
};

</script>

<div>


</div>


<div id="coordinate"></div>
<div id="mappa" style="position:absolute; width:600px; height:400px;"></div>
</body>
</html>
11.511 messaggi dal 09 febbraio 2002
Contributi
Ciao e benvenuto nel forum!

Se metto il seguente codice (preso da un vostro articolo) in una pagina Html di vs, il codice funziona benissimo e carica con velocità la mappa. Se invece uso lo stesso codice in una pagina aspx, carica la base della mappa e dopo un paio di minuti tutto il resto.

Ok, sicuramente dipende da qualche altro pezzo di codice che hai aggiunto rispetto all'esempio sulla pagina HTML, quindi concentriamoci su quello.

Vedo per esempio che stai facendo una richiesta ajax per recuperare le coordinate.
$.getJSON(url, function (data) { ...

È possibile che sia questa richiesta ajax a causare la lentezza?
Per verificarlo, dovresti aprire gli strumenti di sviluppo del browser (tasto F12) e andare nella scheda "Network" o "Rete" per vedere quali richieste partono e in che tempi si completano.
Quasi tutti i browser moderni hanno dei bei grafici temporali con barre che ti indicano i tempi di caricamento, come puoi vedere in questa immagine (sia in alto che in corrispondenza di ciascuna richiesta).

Se scopri che la richiesta ajax in questione ci mette effettivamente 2 minuti, allora vuol dire che bisogna andare nel codice lato server e capire perché è così lenta (es. potrebbe dipendere dalla query che usi per estrarre le coordinate).

Poi facci sapere cosa scopri.

ciao,
Moreno

PS. Questo credo che non sia corretto.
<script src='http://www.bing.com/api/maps/mapcontrol?callback=loadmap&setMkt=it-IT&setLang=it async defer'> </script>

async e defer sono due attributi del tag script, quindi dovrebbe essere:
<script src="http://www.bing.com/api/maps/mapcontrol?callback=loadmap&setMkt=it-IT&setLang=it" async defer></script>

Enjoy learning and just keep making
2 messaggi dal 18 aprile 2019
Grazie mille Moreno, sei stato gentilissimo, proverò e ti farò sapere, grazie ancora.Ciao.

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.