public static List <PolicySyncRec> SynchronizePolicy(List <Policies> _list) { List <PolicySyncRec> errList = new List <PolicySyncRec>(); bool flag = true; string[] arryPolicyId91e = _list.Select(o => o.PartnerPolicyId).ToArray(); PolicySyncRecLib syncRecLib = new PolicySyncRecLib(); // List<string> existIdList =syncRecLib.ExistPartenerIdList(arryPolicyId91e); syncRecLib.BatchDelPolicy(arryPolicyId91e);//先批量置为无效,然后从新添加一条 List <PolicySyncRec> list = MapperHelper.GetEntityList <List <Policies>, List <PolicySyncRec> >(_list); List <PolicyDetail> listDetail = MapperHelper.GetEntityList <List <Policies>, List <PolicyDetail> >(_list); foreach (var item in list) { item.PartnerId = (int)SupplierType._19E; item.PartnerName = SupplierType._19E.ToString(); PolicyDetail policyDeatil = listDetail.FirstOrDefault(x => x.PolicyId == item.Id); //if (existIdList.Contains(item.PartnerPolicyId)) //{ // flag = syncRecLib.Update(item, policyDeatil);//更新 // if(!flag) // { // errList.Add(item); // } //} //else //{ flag = syncRecLib.Add(item, policyDeatil); //添加 if (!flag) { errList.Add(item); } //} } return(errList); }