public class com { /// <summary> /// 把参数转为JSON字符串 /// </summary> /// <param name="all">所有的参娄</param> /// <returns>JSON字符串</returns> public static Hashtable StringToJSON(string all) { Hashtable ht = new Hashtable(); string[] arpar = all.Split('&'); foreach (string p in arpar) ht.Add(p.Split('=')[0], p.Split('=')[1]); return ht; } /// <summary> /// 对象合并之后的JSON字符串 /// </summary> /// <param name="str">参数对象</param> /// <param name="obj">原始对象</param> /// <returns>合并后的字符串</returns> public static string extend(object obj, Hashtable hashTable) { Hashtable ht = new Hashtable(); List<string> listobj = new List<string>(); foreach (PropertyInfo pi in obj.GetType().GetProperties()) listobj.Add(pi.Name); List<string> listpar = new List<string>(); foreach (DictionaryEntry de in hashTable) listpar.Add(de.Key.ToString()); //当存在的时候添加新值 foreach (DictionaryEntry de in hashTable) if (listobj.Contains(de.Key.ToString())) ht.Add(de.Key.ToString(), de.Value.ToString()); //当不存在的时候添加默认值 foreach (PropertyInfo pi in obj.GetType().GetProperties()) if (!listpar.Contains(pi.Name)) ht.Add(pi.Name, pi.GetValue(obj, null)); JavaScriptSerializer serializer = new JavaScriptSerializer(); return new JavaScriptSerializer().Serialize(ht); } }
foreach( string key in allkeys )