Asp.net mvc 2 MVC C#向列表中添加项目<&燃气轮机;内部
我正在做一些事情,虽然我通常在c#方面没有问题,但我的大脑崩溃了,有点卡住了 在我的MVC应用程序中,我有一个控制器,用于管理谷歌地图的一些标记(如下所示)Asp.net mvc 2 MVC C#向列表中添加项目<&燃气轮机;内部,asp.net-mvc-2,list,google-maps,c#-3.0,foreach,Asp.net Mvc 2,List,Google Maps,C# 3.0,Foreach,我正在做一些事情,虽然我通常在c#方面没有问题,但我的大脑崩溃了,有点卡住了 在我的MVC应用程序中,我有一个控制器,用于管理谷歌地图的一些标记(如下所示) public ActionResult GetMarkers() { MarkerList markers=getMarkerFormap(); 返回Json(markers,JsonRequestBehavior.AllowGet); } 公共标记列表GetMarkerFormap() { MarkerList ml=新的MarkerLi
public ActionResult GetMarkers()
{
MarkerList markers=getMarkerFormap();
返回Json(markers,JsonRequestBehavior.AllowGet);
}
公共标记列表GetMarkerFormap()
{
MarkerList ml=新的MarkerList();
foreach(dirRepo.getAllShops()中的var shop)
{
标记器=新标记器
{
html=shop.ShopName,
lat=车间。lat,
液化天然气=车间液化天然气,
label=shop.DirectoryID.ToString()
};
ml.markers.Add(marker);//您需要在标记列表
中初始化列表才能使用它。您可以在默认的标记列表
构造函数中初始化它
public class MarkerList
{
public List<Marker> markers { get; set; }
public MarkerList()
{
markers = new List<Marker>();
}
}
公共类标记列表
{
公共列表标记{get;set;}
公共标记列表()
{
markers=新列表();
}
}
然后,您确定内部列表总是初始化的
顺便说一句:为什么要将列表封装在仅包含此列表的对象中?现在使用标记列表
类没有任何好处。除非仅根据问题的需要将其缩短,否则最好删除此类并直接使用列表
。您需要在中初始化列表>MarkerList
来使用它。您可以在默认的MarkerList
构造函数中初始化它
public class MarkerList
{
public List<Marker> markers { get; set; }
public MarkerList()
{
markers = new List<Marker>();
}
}
公共类标记列表
{
公共列表标记{get;set;}
公共标记列表()
{
markers=新列表();
}
}
然后,您确定内部列表总是初始化的
顺便说一句:为什么要将列表封装在仅包含此列表的对象中?现在使用标记列表
类没有任何好处。除非仅根据问题的需要将其缩短,否则最好删除此类并直接使用列表
。ml.markers为空,因为您使用的是auto p属性(没有后备存储)。例如,您需要在ctor中初始化它
但有一件事看起来很奇怪。首先,为什么markers是公共的,而不是以大写字母开头。更重要的是,当您访问内部列表时,MarkersList类的用途是什么?现在它没有什么意义。要么将内部MarkersList设为private/protected,并将AddMarker方法添加到MarkersList中。要么在控制器中使用List并返回它。ml.markers为空,因为您使用的是自动属性(没有备份存储)。例如,您需要在ctor中初始化它
但有一件事看起来很奇怪。首先,为什么markers是公共的,而不是以大写字母开头。更重要的是,当您访问内部列表时,MarkersList类的用途是什么?现在它没有什么意义。要么将内部MarkersList设为private/protected,并将AddMarker方法添加到MarkersList中。要么在控制器中使用List并返回它。直接使用列表有点像是别人的刀砍,但是直接使用列表有点像是别人的刀砍。但是,直接使用列表有点像是别人的刀砍。
return new MarkerList {markers = new List<Marker> {marker}};
public class MarkerList
{
public List<Marker> markers { get; set; }
public MarkerList()
{
markers = new List<Marker>();
}
}