Example #1
0
 public void Add(object key, object value, bool parse)
 {
     if (!(key is string))
     {
         throw new Exception("添加进列表的KEY必须为字符串");
     }
     this.m_keychange = true;
     if (value is CLSVData)
     {
         this.m_ht_data.Add(key, value);
     }
     else if (parse && (value is string))
     {
         this.m_ht_data.Add(key, (string)value);
     }
     else if ((value is ArrayList) && !(value is CLSArrayList))
     {
         ArrayList    list  = (ArrayList)value;
         CLSArrayList list2 = new CLSArrayList();
         foreach (object obj2 in list)
         {
             list2.Add(obj2);
         }
         this.m_ht_data.Add(key, list2);
     }
     else
     {
         this.m_ht_data.Add(key, new CLSVData(this, value));
     }
 }
Example #2
0
        private string GetJsonValueStr(CLSVData value)
        {
            StringBuilder builder = new StringBuilder();

            if (value.ValueIsNull)
            {
                builder.Append("null");
            }
            else if (CLSVData.Helper_CCDecimal(value.Value))
            {
                builder.Append(value.ValueDecimal);
            }
            else if (value.Value is bool)
            {
                builder.Append(this.GetJsonValueStr_Boolean(value.ValueBool));
            }
            else if (value.Value is string)
            {
                builder.Append(this.GetJsonValueStr_String(value.Value as string));
            }
            else if (value.Value is DateTime)
            {
                builder.Append(this.GetJsonValueStr_String(value.Value.ToString()));
            }
            else if (value.Value is CLSHashtable)
            {
                builder.Append(this.GetJsonValueStr_CLSHashtable(value.Value as CLSHashtable));
            }
            else if (value.Value is CLSArrayList)
            {
                builder.Append(this.GetJsonValueStr_Array(value.Value as CLSArrayList));
            }
            else if (value.Value is ArrayList)
            {
                CLSArrayList arr = new CLSArrayList();
                foreach (object obj2 in value.ValueArrayList)
                {
                    arr.Add(obj2);
                }
                builder.Append(this.GetJsonValueStr_Array(arr));
            }
            else if (value.Value is IEnumerable)
            {
                CLSArrayList list2 = new CLSArrayList();
                foreach (object obj3 in (IEnumerable)value.Value)
                {
                    list2.Add(obj3);
                }
                builder.Append(this.GetJsonValueStr_Array(list2));
            }
            else
            {
                builder.Append(this.GetJsonValueStr_Default(value.Value));
            }
            return(builder.ToString());
        }