asp.net对象合并
2020-12-13 04:19
标签:blog class code c java ext asp.net对象合并,搜素材,soscw.com asp.net对象合并 标签:blog class code c java ext 原文地址:http://www.cnblogs.com/sntetwt/p/3732116.html
public
class
com
{
///
/// 把参数转为JSON字符串
///
/// 所有的参娄
///
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;
}
///
/// 对象合并之后的JSON字符串
///
/// 参数对象
/// 原始对象
///
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);
}
}