public void Delete(BaseModel <String> model, DialogueRecordCacheRequest request) { if (redisConnection == null) { return; } IDatabase database = redisConnection.GetDatabase(); database.KeyDelete(request.Id); model.Success = true; }
public void Add(BaseModel <String> model, DialogueRecordCacheRequest request) { if (redisConnection == null) { return; } IDatabase database = redisConnection.GetDatabase(); database.ListRightPush(request.Id, JsonConvert.SerializeObject(request)); model.Success = true; }
private void SaveDialogue() { if (!work) { return; } /* 取出快取對話紀錄 */ BaseModel <List <String> > model = new BaseModel <List <String> >(); DialogueRecordCacheRequest request = new DialogueRecordCacheRequest(); request.Id = WebSocketClientId; dialogueRecordCacheDAO.Get(model, request); if (!model.Success) { return; } /* 保存對話至資料庫 */ BaseModel <String> model2 = new BaseModel <String>(); DialogueRecordRequest request2 = new DialogueRecordRequest(); request2.AdminId = AdminId; request2.UserName = clientName; request2.Mail = clientMail; request2.Phone = clientPhone; request2.Question = clientQuestion; request2.Record = JsonConvert.SerializeObject(model.Result); dialogueRecordDAO.Add(model2, request2); if (!model2.Success) { return; } /* 刪除快取對話紀錄 */ BaseModel <String> model3 = new BaseModel <String>(); dialogueRecordCacheDAO.Delete(model3, request); if (!model3.Success) { return; } }
private void AddDialogue(String message) { try { BaseModel <String> model = new BaseModel <String>(); DialogueRecordCacheRequest request = new DialogueRecordCacheRequest(); request.Id = WebSocketClientId; request.Value = message; request.CreateTime = DateTime.Now; dialogueRecordCacheDAO.Add(model, request); } catch (Exception) { } }
public void Get(BaseModel <List <String> > model, DialogueRecordCacheRequest request) { if (redisConnection == null) { return; } IDatabase database = redisConnection.GetDatabase(); Int64 len = database.ListLength(request.Id); List <String> result = new List <String>(); for (Int32 i = 0; i < len; i++) { result.Add(database.ListGetByIndex(request.Id, i)); } model.Success = true; model.Result = result; }