Exemplo n.º 1
0
        public async Task <bool> AddAsync(SporeServerUser author, SporeServerAsset asset, bool rating)
        {
            try
            {
                var assetRating = new SporeServerRating()
                {
                    Author    = author,
                    Asset     = asset,
                    Timestamp = DateTime.Now,
                    Rating    = rating
                };

                await _context.AssetRatings.AddAsync(assetRating);

                await _context.SaveChangesAsync();

                // update asset rating
                await UpdateAssetRatingAsync(asset);

                _logger.LogInformation($"AddAsync: Added Rating {assetRating.RatingId}");
                return(true);
            }
            catch (Exception e)
            {
                _logger.LogError($"AddAsync: Failed To Add Rating For {asset.AssetId}: {e}");
                return(false);
            }
        }
Exemplo n.º 2
0
        public async Task <bool> UpdateAsync(SporeServerRating rating)
        {
            try
            {
                // update timestamp
                rating.Timestamp = DateTime.Now;

                // update rating in database
                _context.AssetRatings.Update(rating);
                await _context.SaveChangesAsync();

                // update asset rating
                await UpdateAssetRatingAsync(rating.Asset);

                _logger.LogInformation($"UpdateAsync: Updated Rating {rating.RatingId}");
                return(true);
            }
            catch (Exception e)
            {
                _logger.LogError($"UpdateAsync: Failed To Updated Rating {rating.RatingId}: {e}");
                return(false);
            }
        }