Google Maps y ASP.NET (e.j. 1)

Publicado por en feb 20, 2014 en Programación | 0 comentarios

Google Maps y ASP.NET (e.j. 1)

Hola jovenes, perdón por no agregar nuevas entradas pero de vdd he estado ocupado.Sin mas pretextos les comento que apenas estoy haciendo pruebas con los componentes de google maps utilizando VB.NET en ASP.NET sobre framework 4.0 en Visual Studio 2010.

Que podemos hacer? :

- Usar nativamente los mapas en asp.net
- Usar componentes previamente generados para manipular mapas
- Crear marcadores en el mapa personalizados
- Generar trazas y mapas
- Entre muchas cosas mas.

Para tomar en cuenta:
- Necesitamos el dll con los componentes para asp.net, lo podemos bajar de aquí:
http://googlemaps.subgurim.net/descargar.aspx

el dll para publicarlo en un proyecto sobre internet o intranet se necesitará una licencia, (1 Licencia por dominio cuesta 10€ , 100 Licencias  40€). Para nuestras pruebas no necesitaremos comprarla, ya que  sin licencia solo funcionara en el localhost.

Ejemplo 1:

Poner Marcadores en ciertas zona  del mapa, indicando total de personas existentes ahi y el nombre de su colonia cuando pase el punterode mouse por encima del marcador.

1. Descargamos el dll de la pagina mencionada, lo instalamos como componentes en nuestra barra de herramientas.

2. Agregamos una referencia en el proyecto para que el DLL este en la carpeta [bin] dentro del proyecto.

3.  Codebehind, Imports ponemos :

Librerias del google maps:

Imports Subgurim.Controles
Imports Subgurim.Controls
Imports Subgurim

Librerias generales:

Imports System
Imports System.Web.UI
Imports System.Data
Imports System.Data.OleDb

4.Insertar en el html el componente:

arriba del doctype

<%@ Register assembly=”GMaps” namespace=”Subgurim.Controles” tagprefix=”cc1″ %>

dentro del <html> :

<cc1:GMap ID=”GMap1″ runat=”server” />

5.  Codebehind,  en  Page Load :

If Not IsPostBack Then
‘Activamos el zoom cuando gire  el wheel del mouse
GMap1.enableScrollWheelZoom = True

‘indicamos en el mapa posición definida en este caso es mi ciudad

Dim latlng As GLatLng = New GLatLng(20.117517, -98.746176)

‘aplicamos la posición por default e indicamos el zoom incial en este caso 11 entre mayor mas cerca
GMap1.setCenter(latlng, 11)
Dim cts As ConnectionStringSettings = ConfigurationManager.ConnectionStrings _
(“ConnectionString”)

Dim v_connectionstring As New OleDbConnection(cts.ConnectionString)

Dim id_val As Integer
id_val = 0

Try

v_connectionstring.Open()

Dim cadena As String = “select * from datos”
‘Dim cmd As New SqlClient.SqlCommand
Dim cmd As New OleDbCommand

With cmd
.CommandText = cadena
.Connection = v_connectionstring
End With

Dim rd As OleDbDataReader

rd = cmd.ExecuteReader

‘Se declara la variable q controla  la ubicación
Dim point As GLatLng

‘ se declara el marcador
Dim marker As GMarker

Dim mks As List(Of GMarker) = New List(Of GMarker)
Dim cInfo As String
cInfo = “HOLA”

‘recorre los registros insertando un marcador por registro

‘ en la tabla contiene datos como Colonia,total(cantidad de personas),x(ubicacion eje x),y(ubicacion eje y)

‘ ej. colonia: morelos total:15  x:20.34567 y:-9.986934 , donde cy y son la ubicación

While rd.Read

point = New GLatLng(rd.Item(“x”), rd.Item(“y”))
marker = New GMarker(point)
GMap1.Add(marker)
Dim window As New GInfoWindow(marker, “<b>” & rd.Item(“Colonia”) & “</b><br/> TOTAL: ” & rd.Item(“total”), False, GListener.[Event].mouseover)
GMap1.addInfoWindow(window)

End While

rd.Close() ‘ cierra el reader
v_connectionstring.Close() ‘ cierra la conección

Catch ex As Exception
v_connectionstring.Close()
End Try

End If

6.  para que nos funcione por lomenos en el localhost en caso de no tener la licencia pondriamos en el webconfig lo siguiente:

<appSettings>
<add key=”googlemaps.subgurim.net” value=”ABQIAAAAnfs7bKE82qgb3Zc2YyS-oBT2yXp_ZAY8_ufC3CFXhHIE1NvwkxSySz_REpPq-4WZA27OwgbtyR3VcA” />
</appSettings>

solo funcionara en el localhost, si requerimos en el server tendriamos que comprar una licencia y agregarla donde esta value  en la linea de codigo que se presento.

bueno  un post rapido espero les guste!

andamos por aquí.

Deja un comentario