使用EF为谷歌地图api提供数据

时间:2012-06-13 21:54:37

标签: asp.net-mvc google-maps

我目前有谷歌地图api工作,在MVC3下的地图上显示我的当前位置。

我想在EF查询生成的地图上显示一系列点。

我正在使用谷歌地图javascript实现。

这可以完成,并且是否有任何好的灵魂可以提供代码样本以便向我发送正确的方向。

感谢

2 个答案:

答案 0 :(得分:1)

当然,您的EF查询将返回一组坐标。如果您不使用Ajax来获取坐标并创建页面,那么您可以创建一个javascript数组,如下所示:

<script type="text/javascript">

// coordinates
var locations = [];
@foreach (var item in Model) {
    locations.push(new google.maps.LatLng(@(Model.Latitude), @(Model.Longitude));
}

// Initialze your map and add the markers from the locations array
</script>

在这种情况下,您需要通过模型将所有数据发送到视图。

另一种方法是使用Ajax来获取需要显示的坐标。在这里,您将拥有一个控制器,它将以JSON或XML的形式提供所有坐标。您需要相应地处理它并显示标记。

如果您需要有关在Google地图上显示多个标记的帮助,请参阅this example

答案 1 :(得分:0)

我使用控制器加载结果集,然后通过它们循环,在javascript中为每个结果集创建一个html弹出窗口。

然后我将它们添加到google.maps.Marker例程....