예제 #1
0
 /// <summary>
 /// 直接返回表中的 Json 字符串,不进行反序列化
 /// </summary>
 /// <param name="key"></param>
 /// <returns></returns>
 public string Restore(string key)
 {
     lock (persistLock) {
         var persist = Persists.Where(p => p.Key == key).Take(1).FirstOrDefault();
         return(persist?.Json);
     }
 }
예제 #2
0
 /// <summary>
 /// 保存一批 Json 对象到表中
 /// </summary>
 /// <param name="persists"></param>
 public void SavePersist(IList <Persist> persists)
 {
     lock (persistLock) {
         Persists.AddRange(persists);
         this.SaveChanges();
     }
 }
예제 #3
0
 /// <summary>
 /// 保存一个 Json 对象到表中
 /// </summary>
 /// <param name="persist"></param>
 public void SavePersist(Persist persist)
 {
     lock (persistLock) {
         Persists.AddOrUpdate(persist);
         this.SaveChanges();
     }
 }
예제 #4
0
 /// <summary>
 /// 根据 Key 移除一个 Json 对象
 /// </summary>
 /// <param name="key"></param>
 public void RemovePersist(string key)
 {
     lock (persistLock) {
         var delPersist = Persists.FirstOrDefault(s => s.Key == key);
         if (delPersist != null)
         {
             Persists.Remove(delPersist);
         }
         SaveChanges();
     }
 }
예제 #5
0
 /// <summary>
 /// 将表中的 Json 对象反序列化成对象
 /// </summary>
 /// <typeparam name="T"></typeparam>
 /// <param name="key"></param>
 /// <returns></returns>
 public T Restore <T>(string key)
 {
     lock (persistLock) {
         var ret     = default(T);
         var persist = Persists.FirstOrDefault(p => p.Key == key);
         if (persist != null)
         {
             var json = persist.Json;
             ret = JsonConvert.DeserializeObject <T>(json);
         }
         return(ret);
     }
 }