我有 sql server 表,其中一列是纬度,另一列是经度。我在这个表中有 950 行。现在我想为所有这 950 行添加谷歌地图标记点。所以总共 950 点。我正在使用谷歌用于执行此任务的 ASP.Net 地图控件。要在地图中添加单个点,以下是代码。
GooglePoint GP = new GooglePoint();
GP.Latitude = 43.65669;
GP.Longitude = -79.43270;
GoogleMapForASPNet1.GoogleMapObject.Points.Add(GP);
现在我想从我的 sql 服务器表中获取这个 lat 和 long 。所以它应该添加自己地图中的所有点。请帮助我如何做到这一点。任何示例代码?现在我已经尝试使用此代码。但我没有明白这一点。
protected void Page_Load(object sender, EventArgs e)
{
GoogleMapForASPNet1.GoogleMapObject.Width = "1000px";
GoogleMapForASPNet1.GoogleMapObject.Height = "800px";
GoogleMapForASPNet1.GoogleMapObject.MapType = "Hybrid";
SqlConnection con = new SqlConnection();
con.ConnectionString = "Data Source=GEOFINY5;Initial Catalog=sample;Integrated Security=True";
try
{
SqlCommand cmd = new SqlCommand("Select lat,long from map",con);
con.Open();
SqlDataReader dr = cmd.ExecuteReader();
//int i = 0;
while (dr.Read())
{
GooglePoint gp = new GooglePoint();
//gp.ID = i.ToString;
gp.Latitude = Convert.ToDouble(dr.GetValue(1));
gp.Longitude = Convert.ToDouble(dr.GetValue(2));
gp.InfoHTML = "Hello!!";
GoogleMapForASPNet1.GoogleMapObject.Points.Add(gp);
}
con.Close();
}
catch(Exception ex)
{
}
}
注意:我已经将 Google Map JavaScript API V3 与融合表一起使用。但现在我更喜欢使用 sql server 而不是融合表。