可查询。工会法实现字符串的JSON格式合并的具体实例

可查询。工会法实现字符串的JSON格式合并的具体实例
1。在数据库中,以JSON字符串格式,例如:三

2。添加新的内容并合并不同的数据。如果名称相同,用最新的数据替换原始数据。

例如:数据中心数据库保存为:三

{name的新数据:三

在替换{ name的数据之后:三

代码如下:

复制代码代码如下所示:
公共无效InsertOrUpdateOnlyItem(名单listle)
{
无功listleinsert =新的列表();
无功listleupdate =新的列表();
foreach(VAR乐在listle)
{
tbllims_ana_le_import_common模型=乐;
VaR的= currentrepository。发现(a a.fldtaskid = = model.fldtaskid
a.fldbizcatid = = model.fldbizcatid
a.flditemcode = = model.flditemcode
a.fldnumber = = model.fldnumber
a.fldsamplecode = = fldsamplecode)模型;
如果(拥有)!= null)
{
无功服务=新javascriptserializer();

无功listown =辑> >(自己反序列化。fldimportdata); / /原始数据
VaR ListModel =辑反序列化> >(模型。fldimportdata); / /新数据
IEqualityComparer > EC =新(entitycomparer / /);自定义的比较级
own.fldimportdata =辑连载(listmodel.union(listown,EC)); / /合并数据
listleupdate添加(自己的);
}
其他的
{
ListLeInsert加(模型);
}
}
CurrentRepository.UpdateAll(listleupdate);
CurrentRepository.InsertAll(listleinsert);
currentrepository保存();
}

存储在数据库中的数据tbllims_ana_le_import_common表

联合()方法中使用的自定义比较类:

复制代码代码如下所示:
X
只是比较一下习惯。
X
公共课entitycomparer:IEqualityComparer >
{
public bool等于(字典词典X,Y)
{
如果(ReferenceEquals(x,y))返回true;

如果(ReferenceEquals(x,null)| | ReferenceEquals(Y,null))
返回false;

如果没有添加相同的名称,则返回名称
}

市民int GetHashCode(字典对象)
{
如果(ReferenceEquals(obj,null))返回0;
国际hashname obj { =名字} =零0:obj { }。GetHashCode(名称);
int hashCode obj { =名字} =零0:obj { }。GetHashCode(名称);
hashname ^ hashCode返回;
}
}

tag:合并字符串查询工会法实例

相关内容