示例#1
0
 public void AddOrUpdate(NTMinerFileData data)
 {
     InitOnece();
     lock (_dicById) {
         using (LiteDatabase db = AppRoot.CreateLocalDb()) {
             var col = db.GetCollection <NTMinerFileData>();
             if (_dicById.TryGetValue(data.Id, out NTMinerFileData entity))
             {
                 entity.Update(data);
                 col.Update(entity);
             }
             else
             {
                 data.CreatedOn = DateTime.Now;
                 _dicById.Add(data.Id, data);
                 col.Insert(data);
             }
             CacheLatest();
         }
     }
 }
示例#2
0
 public void AddOrUpdate(NTMinerFileData data)
 {
     InitOnece();
     lock (_locker) {
         using (LiteDatabase db = HostRoot.CreateLocalDb()) {
             var col = db.GetCollection <NTMinerFileData>();
             if (_dicById.ContainsKey(data.Id))
             {
                 _dicById[data.Id].Update(data);
                 col.Update(_dicById[data.Id]);
             }
             else
             {
                 data.CreatedOn = DateTime.Now;
                 _dicById.Add(data.Id, data);
                 col.Insert(data);
             }
             RefreshLatest();
         }
     }
 }
示例#3
0
 private void RefreshLatest()
 {
     _latestMinerClientFile = _dicById.Values.Where(a => a.AppType == NTMinerAppType.MinerClient).OrderByDescending(a => a.GetVersion()).FirstOrDefault();
 }