我正在尝试从对象列表中获取值,并将它们放入一个数组中,该数组包含该对象中的两项。
我知道有一种使用Linq的方法,但是我似乎无法使其工作...
也许您能看到我在做什么错?
我的对象类:
public class WayPointsClass
{
public double latitude { get; set; }
public double longitude { get; set; }
public string description { get; set; }
public WayPointsType type { get; set; }
}
我要进行的转换:
var coordinates = WayPoints.Select(i => new Itinero.LocalGeo.Coordinate {(float)i.latitude, (float)i.latitude }).ToArray();
为清楚起见,WayPoints是WayPointClass的列表。
答案 0 :(得分:0)
您尚未发布错误,但问题在这里:
new Itinero.LocalGeo.Coordinate {(float)i.latitude, (float)i.latitude }
尽管您尚未发布Itinero.LocalGeo.Coordinate
的架构,但是如果使用对象初始化程序,则需要将其分配给特定的字段,它不能像构造函数一样使用,它将自动调用零参数构造函数。
解决方案应类似于(做出一些类架构假设):
new Itinero.LocalGeo.Coordinate {Latitude = (float)i.latitude, Longitude = (float)i.longitude }