Comment intégrer Yahoo carte dans le site web ASP.Net
-
27-09-2019 - |
Question
Comment afficher yahoo carte statique dans gridview si on passe l'adresse comme chaîne de requête? S'il vous plaît également dire comment afficher yahoo dynamique des cartes aussi. J'ai recherché sur les cartes de Yahoo et a obtenu les liens suivants http://developer.yahoo.com/ flash / cartes / examples.html , http://developer.yahoo.com/ cartes / repos / V1 / et http://developer.yahoo.com/maps/. Je n'ai pas de lien qui a le code pour intégrer la carte Yahoo dans un site ASP.Net!
La solution
J'ai créé carte dynamique de Yahoo, l'adresse peut être transmise comme valeur d'un champ caché présent dans la page. La valeur pour le champ caché peut être dynamiquement passé dans l'événement page_load. J'ai créé cela dans la page enfant encapsulé par page maître dans ASP.Net.
Avant de commencer, l'utilisateur doit générer ID d'application pour l'utilisation des cartes yahoo en vous connectant à votre ID Yahoo et naviguer sur ce lien https://login.yahoo.com/config/login_verify2?.src=devnet&.done=http:// developer.apps.yahoo.com/wsregapp/ et fournir l'URL de notre site Web.
Le code pour afficher la carte Yahoo est donnée ci-dessous:
.map { hauteur: 400px; largeur: 700px; Font-family: Verdana; Font-size: 11px; font-weight: bold; }
<script type="text/javascript" src="http://api.maps.yahoo.com/ajaxymap?v=3.8&appid=YourAPPID">
</script>
<script type="text/javascript">
// Capture the user mouse-click and expand the SmartWindow
function onSmartWinEvent() {
// Create a map object
var map = new YMap(document.getElementById('<%= map.ClientID %>'));
// Add a pan control
map.addPanControl();
// Add a slider zoom control
map.addZoomLong();
// Display the map centered on the address specified
map.drawZoomAndCenter(document.getElementById('<%= HiddenField1.ClientID %>').value, 3);
// Create a marker positioned at the address specified
var marker = new YMarker(document.getElementById('<%= HiddenField1.ClientID %>').value, createCustomMarkerImage());
// Add a label to the marker
//marker.addLabel("<blink>*</blink>");
// Call onSmartWinEvent when the user clicks on the marker
YEvent.Capture(marker, EventsList.MouseClick, onSmartWinEvent);
// Display the marker
map.addOverlay(marker);
var words = document.getElementById('<%= HiddenField1.ClientID %>').value;
marker.openSmartWindow(words);
// Add map type control
map.addTypeControl();
// Default map to satellite (YAHOO_MAP_REG) -- other opts: YAHOO_MAP_HYB,YAHOO_MAP_SAT
map.setMapType(YAHOO_MAP_REG);
}
function createCustomMarkerImage() {
var myImage = new YImage();
myImage.src = 'http://l.yimg.com/www.flickr.com/images/dot_splat.png';
myImage.size = new YSize(30, 31);
myImage.offsetSmartWindow = new YCoordPoint(15, 15);
return myImage;
}
</script>
<table width="100%" align="left">
<tr>
<td>
<body onload="onSmartWinEvent()">
<div id="map" class="map" runat="server">
</div>
<asp:HiddenField ID="HiddenField1" runat="server" />
</body>
</td>
</tr>
</table>
NOTE: La limitation du débit: Yahoo! Maps API AJAX est limité à 50.000 requêtes par IP par jour. Vérifiez ce lien http://developer.yahoo.com/search/rate.html