SuperMap.Web.iServerJava2.NetworkModelSetting.ToJson C# (CSharp) 메소드

ToJson() 정적인 개인적인 메소드

static private ToJson ( NetworkModelSetting networkModelSetting ) : string
networkModelSetting NetworkModelSetting
리턴 string
        internal static string ToJson(NetworkModelSetting networkModelSetting)
        {
            if (networkModelSetting == null)
            {
                return null;
            }

            string json = "{";

            List<string> list = new List<string>();
            if (!string.IsNullOrEmpty(networkModelSetting.NetworkDatasetName))
            {
                list.Add(string.Format("\"networkDatasetName\":\"{0}\"", networkModelSetting.NetworkDatasetName));
            }

            if (!string.IsNullOrEmpty(networkModelSetting.NetworkDataSourceName))
            {
                list.Add(string.Format("\"networkDataSourceName\":\"{0}\"", networkModelSetting.NetworkDataSourceName));
            }

            list.Add(string.Format("\"tolerance\":\"{0}\"", networkModelSetting.Tolerance));

            if (!string.IsNullOrEmpty(networkModelSetting.NodeIDField))
            {
                list.Add(string.Format("\"nodeIDField\":\"{0}\"", networkModelSetting.NodeIDField));
            }

            if (!string.IsNullOrEmpty(networkModelSetting.EdgeIDField))
            {
                list.Add(string.Format("\"edgeIDField\":\"{0}\"", networkModelSetting.EdgeIDField));
            }

            if (networkModelSetting.WeightFieldInfos != null)
            {
                List<string> infos = new List<string>();
                foreach (WeightFieldInfo info in networkModelSetting.WeightFieldInfos)
                {
                    infos.Add(WeightFieldInfo.ToJson(info));
                }
                list.Add(string.Format("\"weightFieldInfos\":[{0}]", string.Join(",", infos.ToArray())));
            }

            if (!string.IsNullOrEmpty(networkModelSetting.TNodeIDField))
            {
                list.Add(string.Format("\"tNodeIDField\":\"{0}\"", networkModelSetting.TNodeIDField));
            }

            if (!string.IsNullOrEmpty(networkModelSetting.FNodeIDField))
            {
                list.Add(string.Format("\"fNodeIDField\":\"{0}\"", networkModelSetting.FNodeIDField));
            }

            if (!string.IsNullOrEmpty(networkModelSetting.NodeNameField))
            {
                list.Add(string.Format("\"nodeNameField\":\"{0}\"", networkModelSetting.NodeNameField));
            }
            else
            {
                list.Add("\"nodeNameField\":\"\"");
            }

            if (!string.IsNullOrEmpty(networkModelSetting.EdgeNameField))
            {
                list.Add(string.Format("\"edgeNameField\":\"{0}\"", networkModelSetting.EdgeNameField));
            }
            else
            {
                list.Add("\"edgeNameField\":\"\"");
            }

            if (networkModelSetting.BarrierEdges != null && networkModelSetting.BarrierEdges.Count > 0)
            {
                List<string> barrieredges = new List<string>();
                foreach (int i in networkModelSetting.BarrierEdges)
                {
                    barrieredges.Add(i.ToString());
                }
                list.Add(string.Format("\"barrierEdges\":[{0}]", string.Join(",", barrieredges.ToArray())));
            }
            else if (networkModelSetting.BarrierEdges == null)
            {
                list.Add("\"barrierEdges\":null");
            }

            if (networkModelSetting.BarrierNodes != null && networkModelSetting.BarrierNodes.Count > 0)
            {
                List<string> barriernodes = new List<string>();
                foreach (int ii in networkModelSetting.BarrierNodes)
                {
                    barriernodes.Add(ii.ToString());
                }
                list.Add(string.Format("\"barrierNodes\":[{0}]", string.Join(",", barriernodes.ToArray())));
            }
            else if (networkModelSetting.BarrierNodes == null)
            {
                list.Add("\"barrierNodes\":null");
            }

            if (networkModelSetting.TurnTableSetting != null)
            {
                list.Add(string.Format("\"turnTableSetting\":[{0}]", TurnTableSetting.ToJson(networkModelSetting.TurnTableSetting)));
            }
            else if (networkModelSetting.TurnTableSetting == null)
            {
                list.Add("\"turnTableSetting\":null");
            }

            json += string.Join(",", list.ToArray());
            json += "}";

            return json;
        }