2011-04-19 79 views
1

控制器:谷歌地图V3 asp.net MVC 3

public ActionResult FeaturedDealers() 
{ 
    var featuredDealers = dealerRepository.GetFeaturedDealers().ToList(); 
     return View(featuredDealers); 
} 

查看

var locations = [ 
    <% foreach (var dealer in Model) { %> 
    ['<%: dealer.Website %>', <%: String.Format("{0:F}", dealer.Latitude) %>, <%: String.Format("{0:F}", dealer.Longitude) %>], 
    <% } %>]; 

我试图创建一个使用谷歌地图一个基本的经销商查询。 我遇到了多个标记问题。 上述作品,但我知道这是错误的。 非常感谢帮助,谢谢。

回答

1
var locations = <%= Json.Encode(Model.Select(x => new[] { 
    x.Website, 
    String.Format("{0:F}", x.Latitude), 
    String.Format("{0:F}", x.Longitude) 
})) %>; 

显然,这将是一种犯罪行为,以适当地把这个Select语句的视图,从而准备模型控制器它处理到视图,这样才:

public ActionResult FeaturedDealers() 
{ 
    var featuredDealers = dealerRepository 
     .GetFeaturedDealers() 
     .Select(x => new[] 
     { 
      x.Website, 
      String.Format("{0:F}", x.Latitude), 
      String.Format("{0:F}", x.Longitude) 
     }); 
    return View(featuredDealers); 
} 

,然后:

var locations = <%= Json.Encode(Model) %>;