Esempio n. 1
0
        public IHttpActionResult GetSeason([FromUri] string leagueName, [FromUri] long seasonId, [FromUri] string fields = null, bool excludeFields = false)
        {
            try
            {
                logger.Info($"Get Reviews for season id: {seasonId} - league: {leagueName}");
                CheckLeagueRole(User, leagueName);

                // check for empty parameters
                if (string.IsNullOrEmpty(leagueName))
                {
                    return(BadRequestEmptyParameter(nameof(leagueName)));
                }

                var databaseName = GetDatabaseNameFromLeagueName(leagueName);

                // Get reviews data from Data Access layer
                SeasonReviewsDTO data;
                using (var dbContext = CreateDbContext(databaseName))
                {
                    IReviewDataProvider reviewDataProvider = new ReviewDataProvider(dbContext);
                    data = reviewDataProvider.GetReviewsFromSeason(seasonId);
                }

                // return complete DTO or select fields
                logger.Info($"Send data - ReviewsDTO id: {data.SeasonId}");
                if (string.IsNullOrEmpty(fields))
                {
                    return(Ok(data));
                }
                else
                {
                    data.SetSerializableProperties(fields.Split(','), excludeFields);
                    var response = SelectFieldsHelper.GetSelectedFieldObject(data);
                    return(Json(response));
                }
            }
            catch (Exception e)
            {
                logger.Error("Error in get Reviews", e);
                throw e;
            }
        }
 // POST: api/Review
 public string Post([FromBody] CreateReviewDTO value)
 {
     return(ReviewDataProvider.InsertReview(value));
 }
 public IEnumerable <ReadReviewDTO> GetReviewsByUser(string userId)
 {
     return(ReviewDataProvider.GetReviewsByUser(userId));
 }
 // GET: api/Review/5
 public ReadReviewDTO Get(string id)
 {
     return(ReviewDataProvider.GetReview(id));
 }
 public IEnumerable <ReadReviewDTO> GetReviewsForCarrier(string carrierId)
 {
     return(ReviewDataProvider.GetReviewsByCarrier(carrierId));
 }