如何使用c#.net从数据库中获取lat-long
本文关键字:获取 lat-long 数据库 何使用 net | 更新日期: 2023-09-27 18:04:52
- 我的ajax调用是这样的
$(document(.ready(function(({
$.ajax({
type: "POST",
url: "map.aspx/getCityPopulation2",
//data: jsonData,
contentType: "application/json; charset=utf-8",
data: "{}",
dataType: "json",
success: function (data) {
var points = L.geoJson(data, {
pointToLayer: function (feature, latlng) {
marker = L.marker(latlng, { icon: ratIcon })
marker.bindPopup(feature.properties.Source + '<br/>');
return marker;
}
}).addTo(pointsCluster);
mymap.addLayer(pointsCluster);
}
});
2.这是我执行查询的代码。
[WebMethod]
public static List<cityPopulation2> getCityPopulation2()
{
List<cityPopulation2> p = new List<cityPopulation2>();
using (NpgsqlConnection con = new NpgsqlConnection("Server=Localhost;Port=5432;User Id=postgres;Password=postgres;Database=post;"))
{
string myQuery = "select complaintlgeolon,complaintlgeolat from mandapet.pgr_demo_view";
NpgsqlCommand cmd = new NpgsqlCommand();
cmd.CommandText = myQuery;
cmd.CommandType = CommandType.Text;
cmd.Connection = con;
con.Open();
NpgsqlDataReader dr = cmd.ExecuteReader();
if (dr.HasRows)
{
while (dr.Read())
{
cityPopulation2 cpData = new cityPopulation2();
cpData.lat = Convert.ToInt32(dr["complaintlgeolon"]);
cpData.lng = Convert.ToInt32(dr["complaintlgeolon"]);
p.Add(cpData);
}
}
}
return p;
}
}
public class cityPopulation2
{
public int lat { get; set; }
public int lng { get; set; }
// public string id { get; set; }
}
3.请任何人指引我哪里出错了。我需要获取数据作为j son并绘制标记
根据您的评论,如果您要返回json。。您可以使用JavaScriptSerializer
JavaScriptSerializer ASerializer = new JavaScriptSerializer();
//you can create your own custom converter of cityPopulation2
ASerializer.RegisterConverters(new JavaScriptConverter[] {new cityPopulation2()});
var Json = ASerializer.Serialize(p);
return Json;
还要确保lag and long
的DB值是int