private async Task <bool> UpdateNodeMap(SuperBStation st) { if (!nodemap.Exists(n => n.nodeIsid == st.NodeIsid && n.objId == st.OrgiData.ID)) { var map = new SqlNodeMap() { nodeIsid = st.NodeIsid, objId = st.OrgiData.ID }; try { await _db.nodemap.AddAsync(map); await _db.SaveChangesAsync(); nodemap.Add(map); } catch (Exception ex) { LogHelper.Error(ex); return(false); } } return(true); }
/// <summary> /// add:增加nodemap和station实体 /// update:只替换实体 /// </summary> /// <param name="station"></param> /// <returns></returns> public async Task <bool> UpdateOrAddStation(TStation station) { var nd = NdList.Find(n => n.OrgiData.ID == station.ID); if (nd == null) { var ndMap = nodemap.Find(n => n.objId == nd.OrgiData.ID); if (ndMap == null) { return(false); } nd = new SuperBStation(station, ndMap.nodeIsid); try { await _db.tStation.AddAsync(nd.DbData); await _db.SaveChangesAsync(); NdList.Add(nd); } catch (Exception ex) { LogHelper.Error(ex); return(false); } } else { if (nd.Update(station)) { try { _db.tStation.Update(nd.DbData); await _db.SaveChangesAsync(); } catch (Exception ex) { LogHelper.Error(ex); return(false); } } } return(true); }