Bonsoir,
C'est mon premier post sur ce forum, j'espère ne pas m'être trompé d'endroit pour poster ma question. Je vous explique en quelques mots : j'essaye d'afficher sur une carte d'angleterre les icônes de temps renvoyées par un service pour un nombre de stations météo fixé.
Pour ce faire j'utilise une ArrayList préalablement remplies dans ma partie C# (CodeBehind="SRB.aspx.cs") avec des objets de type Weather contenant plusieurs string d'information météo. Cette ArrayList fonctionne correctement et me renvois bien toutes les informations météo dont j'ai besoin.
Le problème intervient simplement lorsque j'essaye de faire fonctionner une boucle FOR dans mon code ASP afin de positionner toutes les stations météo sur ma carte.
Ci-dessous l'initialisation avec l'appel à google map pour afficher une carte:
Ensuite vient la boucle For qui me pose problème, c'est simplement une question de synthaxe probablement, pour l'instant si je remplace le "i" par le chiffre d'un index contenu dans la liste, cela marche sans problème. J'ai l'impression que la boucle "for" ne fonctionne simplement pas. L'erreur renvoyé pour le moment est "The name 'i' does not exist in the current context".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 var map; function initialize() { if (GBrowserIsCompatible()) { map = new GMap2(document.getElementById("map_canvas")); map.setCenter(new GLatLng(55.18, -2.3), 5); map.addControl(new GOverviewMapControl()); map.setUIToDefault();
Merci d'avoir pris la peine de lire jusqu'au bout et merci pour toute réponse constructive.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 var i=0; for (i = 0; i <= "<%=Weatherdecod.Count %>" - 1; i++) //Weatherdecod est mon ArrayList, en mode débug je peux y voir les objets météo qu'elle contient. { var tempo = new GLatLng(<%=((ScottishRainBird._Default.Weather)Weatherdecod[i]).latit %>,<%=((ScottishRainBird._Default.Weather)Weatherdecod[i]).longit %>); //<%=((ScottishRainBird._Default.Weather)Weatherdecod[i]).latit %> et <%=((ScottishRainBird._Default.Weather)Weatherdecod[i]).longit %> sont les coordonnées de la sation concernée (latitude, longitude), lorsque je remplace le "i" par une valeur d'index (0, 1, 2, 3, ..... etc) j'arrive à visulaliser la sation sur ma carte var weatherIcon = new GIcon(G_DEFAULT_ICON); //weatherIcon est la gestion de l'icône météo, tout cela fonctionne sans problème sur un autre projet avec 3 stations météo statiques. weatherIcon.image = "<%=((ScottishRainBird._Default.Weather)Weatherdecod[i]).icon %>"; //<%=((ScottishRainBird._Default.Weather)Weatherdecod[i]).icon %> fait référence à l'icône météo relative à l'objet "i" que je souhaite afficher. weatherIcon.shadow = null; weatherIcon.iconSize = new GSize(32, 32); weatherIcon.iconAnchor = new GPoint(35, 16); var markertempo = new GMarker(tempo, { icon: weatherIcon, } ); map.addOverlay(markertempo); //demande d'affichage de l'icône de temps } } }
Jimmy
Partager