Esempio n. 1
0
        public async Task <ThreadWrapper> AddThreads()
        {
            try
            {
                _logger.LogInformation("Adding Object to DataBase");
                if (await ThreadExists("1"))
                {
                    await _threadRepo.RemoveThreads("1");
                }

                var json = await GetTopThreads();

                var bson     = new ThreadsInBsonWrapper();
                var bsonList = new List <ThreadsInBson>();

                for (int i = 0; i < 5; i++)
                {
                    var wrap = new ThreadsInBson();
                    wrap.Title    = json.ThreadWrapper.Threads[i].Title;
                    wrap.Comments = json.ThreadWrapper.Threads[i].Comments;
                    bsonList.Add(wrap);
                }
                bson.Id            = "1";
                bson.ThreadsInBson = bsonList;
                await _threadRepo.AddThreads(bson);

                _logger.LogInformation("Added Object to DataBase");
                return(json.ThreadWrapper);
            }
            catch (Exception e)
            {
                _logger.LogCritical(e, "Failed To Communicate To Database.");
                throw;
            }
        }
Esempio n. 2
0
 public async Task AddThreads(ThreadsInBsonWrapper item)
 {
     try
     {
         await _context.ThreadsInBson.InsertOneAsync(item);
     }
     catch (Exception ex)
     {
         _logger.LogError("Failed To Add Object From Database. {ex}", ex);
         throw;
     }
 }
Esempio n. 3
0
        public async Task <bool> UpdateThreads(string id, string body)
        {
            try
            {
                ThreadsInBsonWrapper item = JsonConvert.DeserializeObject <ThreadsInBsonWrapper>(body);
                ReplaceOneResult     actionResult
                    = await _context.ThreadsInBson
                      .ReplaceOneAsync(n => n.Id.Equals(id)
                                       , item
                                       , new ReplaceOptions { IsUpsert = true });

                return(actionResult.IsAcknowledged &&
                       actionResult.ModifiedCount > 0);
            }
            catch (Exception ex)
            {
                //anage the exception
                throw ex;
            }
        }