${iServerJava6R_LinkItem_Tile}

${iServerJava6R_LinkItem_Description}

${iServerJava6R_LinkItem_remarks}

        internal static string ToJson(LinkItem param)
        {
            if (param == null)
            {
                return null;
            }
            string json = "{";
            List<string> list = new List<string>();

            list.Add(string.Format("\"datasourceConnectionInfo\":{0}", DatasourceConnectionInfo.ToJson(param.DatasourceConnectionInfo)));

            if (param.ForeignKeys != null && param.ForeignKeys.Count > 0)
            {
                List<string> temp = new List<string>();
                for (int i = 0; i < param.ForeignKeys.Count; i++)
                {
                    temp.Add(string.Format("\"{0}\"", param.ForeignKeys[i]));
                }
                list.Add(string.Format("\"foreignKeys\":[{0}]", string.Join(",", temp.ToArray())));
            }
            if (param.LinkFields != null && param.LinkFields.Count > 0)
            {
                List<string> temp = new List<string>();
                for (int i = 0; i < param.LinkFields.Count; i++)
                {
                    temp.Add(string.Format("\"{0}\"", param.LinkFields[i]));
                }
                list.Add(string.Format("\"linkFields\":[{0}]", string.Join(",", temp.ToArray())));
            }
            if (param.PrimaryKeys != null && param.PrimaryKeys.Count > 0)
            {
                List<string> temp = new List<string>();
                for (int i = 0; i < param.PrimaryKeys.Count; i++)
                {
                    temp.Add(string.Format("\"{0}\"", param.PrimaryKeys[i]));
                }
                list.Add(string.Format("\"primaryKeys\":[{0}]", string.Join(",", temp.ToArray())));
            }

            if (!string.IsNullOrEmpty(param.Name))
            {
                list.Add(string.Format("\"name\":\"{0}\"", param.Name));
            }
            else
            {
                list.Add("\"name\":null");
            }

            if (!string.IsNullOrEmpty(param.ForeignTable))
            {
                list.Add(string.Format("\"foreignTable\":\"{0}\"", param.ForeignTable));
            }
            else
            {
                list.Add("\"foreignTable\":null");
            }

            if (!string.IsNullOrEmpty(param.LinkFilter))
            {
                list.Add(string.Format("\"linkFilter\":\"{0}\"", param.LinkFilter));
            }
            else
            {
                list.Add("\"linkFilter\":null");
            }

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