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); } }
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); } }