internal static string ToJson(NetworkAnalystParam networkAnalystParam)
{
if (networkAnalystParam == null)
{
return null;
}
string json = "{";
List<string> list = new List<string>();
if (!string.IsNullOrEmpty(networkAnalystParam.WeightName))
{
list.Add(string.Format("\"weightName\":\"{0}\"", networkAnalystParam.WeightName));
}
else
{
list.Add("\"weightName\":\"\"");
}
if (networkAnalystParam.NodeIDs != null && networkAnalystParam.NodeIDs.Count > 0)
{
List<string> temp = new List<string>();
foreach (int id in networkAnalystParam.NodeIDs)
{
temp.Add(id.ToString());
}
list.Add(string.Format("\"nodeIDs\":\"{0}\"", string.Join(",", temp.ToArray())));
}
else
{
list.Add(string.Format("\"nodeIDs\":null"));
}
if (networkAnalystParam.Point2Ds != null && networkAnalystParam.Point2Ds.Count > 0)
{
List<string> tempPS = new List<string>();
foreach (Point2D p in networkAnalystParam.Point2Ds)
{
tempPS.Add(JsonHelper.FromPoint2D(p));
}
list.Add(string.Format("\"point2Ds\":[{0}]", string.Join(",", tempPS.ToArray())));
}
if (networkAnalystParam.BarrierNodes != null && networkAnalystParam.BarrierNodes.Count > 0)
{
List<string> tempBD = new List<string>();
foreach (int bd in networkAnalystParam.BarrierNodes)
{
tempBD.Add(bd.ToString());
}
list.Add(string.Format("\"barrierNodes\":[{0}]", string.Join(",", tempBD.ToArray())));
}
else
{
list.Add(string.Format("\"barrierNodes\":null"));
}
if (networkAnalystParam.BarrierEdges != null && networkAnalystParam.BarrierEdges.Count > 0)
{
List<string> tempBE = new List<string>();
foreach (int be in networkAnalystParam.BarrierEdges)
{
tempBE.Add(be.ToString());
}
list.Add(string.Format("\"barrierEdges\":[{0}]", string.Join(",", tempBE.ToArray())));
}
else
{
list.Add(string.Format("\"barrierEdges\":null"));
}
if (!string.IsNullOrEmpty(networkAnalystParam.TurnWeightField))
{
list.Add(string.Format("\"turnWeightField\":\"{0}\"", networkAnalystParam.TurnWeightField));
}
else
{
list.Add(string.Format("\"turnWeightField\":\"\""));
}
list.Add(string.Format("\"isNodesReturn\":{0}", networkAnalystParam.IsNodesReturn));
list.Add(string.Format("\"isEdgesReturn\":{0}", networkAnalystParam.IsEdgesReturn));
list.Add(string.Format("\"isPathGuidesReturn\":{0}", networkAnalystParam.IsPathGuidesReturn));
list.Add(string.Format("\"isPathsReturn\":{0}", networkAnalystParam.IsPathsReturn));
list.Add(string.Format("\"isStopsReturn\":{0}", networkAnalystParam.IsStopsReturn));
json += string.Join(",", list.ToArray());
json += "}";
return json;
}