list转成这种格式要怎么写?

-一个大坑 2018-10-26 02:47:21
百度地图没搞定轨迹问题,在同事提醒下转用高德地图的轨迹回放

我目前数据是string bdjson=[{"latitude":22.56671,"longitude":113.455162},{"latitude":22.5667725,"longitude":113.45546},{"latitude":22.5661736,"longitude":113.455894},{"latitude":22.5669842,"longitude":113.455086},{"latitude":22.5664921,"longitude":113.455437}];

高德前端接收数据是lineArr = [[113.455163, 22.56671], [113.455462, 22.566773], [113.455897, 22.566173], [113.455087, 22.566985], [113.455433, 22.566493]];

怎么转下格式,正则不熟,前端后端转都行

public static string GetJson(string traclJson)
{
try
{
var traclList = JsonConvert.DeserializeObject<traclModel>(traclJson);
var trackCoordList = new List<TrackCoord>();
foreach (var item in traclList.FObject)
{
var trackCoord = new TrackCoord();
trackCoord.latitude = item.FLatitude;
trackCoord.longitude = item.FLongitude;
trackCoordList.Add(trackCoord);
}
string bdjson = JsonConvert.SerializeObject(trackCoordList);
return bdjson;
}
catch (Exception ex)
{
return "Error";
}
}
...全文
641 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
程序员的键盘 2018-10-29
  • 打赏
  • 举报
回复

var bdjson=[{"latitude":22.56671,"longitude":113.455162},{"latitude":22.5667725,"longitude":113.45546},{"latitude":22.5661736,"longitude":113.455894},{"latitude":22.5669842,"longitude":113.455086},{"latitude":22.5664921,"longitude":113.455437}];

var temp =bdjson.map(d=>{return [d.latitude,d.longitude];});
wanghui0380 2018-10-26
  • 打赏
  • 举报
回复
你返回的是string他就是string 你可以返回[] 或者直接object,作为webapi提供正常做法是直接使用object返回(微软会自己给你序列化的,不需要你转啥)
stherix 2018-10-26
  • 打赏
  • 举报
回复
引用 4 楼 happy4944 的回复:
[quote=引用 3 楼 happy4944 的回复:] [quote=引用 2 楼 stherix 的回复:] var trackCoordList = new List<TrackCoord>();要改成 var trackCoordList = new List<float[]>();
没用过List<float[]>();,要怎么增加数据[/quote] 转成了,不过前台是lineArr = "[[113.455163, 22.56671], [113.455462, 22.566773], [113.455897, 22.566173], [113.455087, 22.566985], [113.455433, 22.566493]]";多了双引号还是不行 [/quote] bdjson 里面本身是不带双引号的,是传到外面自己带了吧,你调试下就知道
-一个大坑 2018-10-26
  • 打赏
  • 举报
回复
引用 3 楼 happy4944 的回复:
[quote=引用 2 楼 stherix 的回复:]
var trackCoordList = new List<TrackCoord>();要改成
var trackCoordList = new List<float[]>();

没用过List<float[]>();,要怎么增加数据[/quote]
转成了,不过前台是lineArr = "[[113.455163, 22.56671], [113.455462, 22.566773], [113.455897, 22.566173], [113.455087, 22.566985], [113.455433, 22.566493]]";多了双引号还是不行
public static string GetJson(string traclJson)
{
try
{
var traclList = JsonConvert.DeserializeObject<traclModel>(traclJson);
var trackCoordList = new List<float[]>();
foreach (var item in traclList.FObject)
{
float[] aa = { item.FLongitude,item.FLatitude };
trackCoordList.Add(aa);
}
string bdjson = JsonConvert.SerializeObject(trackCoordList);
return bdjson;
}
catch (Exception ex)
{
return "NO";
}
}
-一个大坑 2018-10-26
  • 打赏
  • 举报
回复
引用 2 楼 stherix 的回复:
var trackCoordList = new List<TrackCoord>();要改成
var trackCoordList = new List<float[]>();

没用过List<float[]>();,要怎么增加数据
stherix 2018-10-26
  • 打赏
  • 举报
回复
var trackCoordList = new List<TrackCoord>();要改成 var trackCoordList = new List<float[]>();
stherix 2018-10-26
  • 打赏
  • 举报
回复
 public static string GetJson(string traclJson)
        {
            try
            {
                var traclList = JsonConvert.DeserializeObject<traclModel>(traclJson);
                var trackCoordList = new List<TrackCoord>();
                foreach (var item in traclList.FObject)
                {
                    var trackCoord = new float[2];
                    trackCoord[0] = item.FLatitude;
                    trackCoord[1] = item.FLongitude;
                    trackCoordList.Add(trackCoord);
                }
                string bdjson = JsonConvert.SerializeObject(trackCoordList);
                return bdjson;
            }
            catch (Exception ex)
            {
                return "Error";
            }
        }

62,071

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧