在我的控制器上我有一个地址列表,我想传递给视图,所以我有一个只处理一个记录但不遍历每个记录的愚蠢代码
<script>
function initMap() {
var uluru = { lat: @ViewBag.Latitude, lng: @ViewBag.Longitude };
//var uluru = {lat: -25.363, lng: 131.044};
var map = new google.maps.Map(document.getElementById('map'), {
center: uluru,
// Set mapTypeId to SATELLITE in order
// to activate satellite imagery.
mapTypeId: 'satellite',
zoom: 8
});
var marker = new google.maps.Marker({
position: uluru,
map: map
});
}
</script>
答案 0 :(得分:0)
假设您已将一个列表分配给ViewBag
ViewBag.Addresses = new List<Address>() { ... };
一种方法是使用for循环推入JavaScript数组。
<script>
var coordinates = [];
@for(int i = 0; i < ViewBag.Addresses.Count(); i++)
{
<text>
coordinates.push({lat: @ViewBag.Addresses[i].Latitude, lng: @ViewBag.Addresses[i].Longitude });
</text>
}
var map ...
</script>