使用变量从MVC中的模型添加经度和纬度Google Maps API - c#

我试图找出一种方法来从我在MVC中拥有的模型中提取经度和纬度数据,并使用Google Maps API将其显示出来。我已经进行了研究,有一些对人有用的不同方法,但是我无法在我的项目中工作。我想不出最好/最有效的方法来做到这一点,或者我什至离我很近。任何帮助或指导都将不胜感激。

我的Model类如下所示:

 public class Markers
{
    [Key]


    public double lat { get; set; }

    public double lon { get; set;}

    public Boolean stillActive { get; set; }

       }

}

我目前有一个控制器类,这很裸露。我认为这是我需要放置逻辑以将所需数据传递到View的地方。我现在只想使用纬度和经度字段。现在,在尝试多种不同方式后,我有了这个。

public class MapController : Controller {
private DBContext db = new DBContext();

public ActionResult Map() {

// Can't figure this out }

在我的视图中,我目前有以下代码。我不知道是我应该在Controller中设置变量,然后将其传递给View吗?我是否应该直接从模型中的视图中访问它们?有没有简单的方法/困难的方法来做到这一点?我想显示数据库中当前的所有标记。
这是我的观点:

 function initialize() {
    var mapOptions = {
        center: new google.maps.LatLng(50.0, -119.088889),
        zoom: 5,
        mapTypeId: google.maps.MapTypeId.ROADMAP
    };
    var map = new google.maps.Map(document.getElementById("map_canvas"),
      mapOptions);


    *//Create Marker   //Trying to take all values in the coloumns of lat and lon and 
                       and place them in the LatLng function. //* 
        var latlng = new google.maps.LatLng(*//WANT All instances of LAT HERE, //WANT all instances of LON HERE*);
    var marker = new google.maps.Marker({
        position: latlng,
        map: map,
            title: "My Marker"        
    });
}

抱歉,如果很难阅读,我对StackOverFlow不满意。任何方向将不胜感激。提前致谢。

参考方案

据我了解,您正在寻找一种将数据从控制器传递到视图的有效方法。在控制器操作中,从dbContext中获取经纬度数据。将数据保存在控制器中后,需要将其传递给视图。这可以通过将viewmodel传递到视图或将属性添加到ViewBag来完成。因此,如果您要使用ViewBag,您的操作代码将类似于以下内容。

public ActionResult Map()
{
    Coordinates latLng = db.GetCoordinates();
    ViewBag.lat = latLng.lat;
    ViewBag.lng = latLng.lng;
    return View();
}

在您看来,您所需要做的就是引用ViewBag的属性。

var latlng = new google.maps.LatLng(@ViewBag.lat, @ViewBag.lng)

希望能有所帮助。

Google Analytics API - php

我正在实施Google Analytics(分析)Api。授权完成没有问题。成功授权后,我得到403 return code并得到消息:User does not have sufficient permissions for this profile。我的帐户具有Google Analytics(分析)数据,可以跟踪多个网站,并且我可以从网络浏览器访问它而…

Google Analytics API DateRange定义 - php

Google Analytics(分析)报告api中“ 1daysAgo”的定义到底是什么?我正在使用Analytics(分析)API来获取传入流量。我想获取过去24小时内传入流量的结果。如果我在php中创建一个新的DateTime对象,例如:$date = new DateTime('1daysAgo'); 我的约会恰好是24小时前。但…

C#Google Maps api-HTML部分的javascript错误 - javascript

我最近想使用googlemap API在带有Visual Studio的简单C#Windows窗体中在地图上显示一些标记。我使用“网络浏览器”组件来显示生成的html文件,其中包含来自google的基本html代码以及自定义坐标。 const string htmlPath = "D:/map.html"; StreamWriter sw…

Google Maps-将地址转换为纬度和经度-PHP后端? - php

是否可以转换(在PHP后端):<?php $Address = "Street 1, City, Country"; // just normal address ?> 至<?php $LatLng = "10.0,20.0"; // latitude & lonitude ?> 我当前…

ASP.NET Web API 2中AuthorizeAttribute发生了什么变化? - c#

我已经将项目和一组单元测试从ASP.NET Web API升级到ASP.NET Web API 2。我们将自定义DelegatingHandler用于自定义身份验证机制。它将Thread.CurrentPrincipal和HttpContext.Current.User设置为适当的System.Security.Claims.ClaimsPrincipal。…