使用C#/DataTable在谷歌地图上显示数据

本文关键字:显示 数据 谷歌地图 DataTable 使用 | 更新日期: 2023-09-27 18:26:35

我做错了什么?我正试图用数据库中的数据加载谷歌地图,并使用以下代码,但在输入foreach时出现错误:"GMaps.dll中发生类型为"System.exception"的异常,但未在用户代码中处理"附加信息:纬度必须是甜菜文-90和90"

   if (!IsPostBack)
    {
        GLatLng mainLocation = new GLatLng(-18.8533, -41.9450);
        GMapMyFriends.setCenter(mainLocation, 15);
        XPinLetter xpinLetter = new XPinLetter(PinShapes.pin_star, "C", Color.Green, Color.White, Color.Chocolate);
        GMapMyFriends.Add(new GMarker(mainLocation, new GMarkerOptions(new GIcon(xpinLetter.ToString(), xpinLetter.Shadow()))));
        DataTable MyFriends = db.ExecuteSelect("SELECT lat ,lng FROM tblAdress;");
        PinIcon p;
        GMarker gm;
         foreach (DataRow dtRow in MyFriends.Rows)
        {
            foreach (DataColumn dc in MyFriends.Columns)
            {   p = new PinIcon(PinIcons.home, Color.Cyan);
                gm = new GMarker(new GLatLng(Convert.ToDouble(dtRow["lat"]), Convert.ToDouble(dtRow["lng"])),
                    new GMarkerOptions(new GIcon(p.ToString(), p.Shadow())));
           }
        }
    }
}

使用C#/DataTable在谷歌地图上显示数据

从数据库返回的值之一大于90或小于-90。在代码上创建一个断点,并逐步查看从数据库返回的值,以确定是哪个断点。

您还应该捕获错误的值,并将它们设置为其他值(不显示或默认为其他值)

您必须将"."更改为","才能接受正确的变量参数实例-18.8533-18.8533通过替换变量的值是正确的

荷拉这是一个很好的例子ejemplosustituir-18.8533 por-188533 para que el valor de la variable sea correcto