コード例 #1
0
        public void EditFeedback(FeedbackViewModel feedback)
        {
            Feedback feedbacks = _feedbackRepository.GetById(feedback.Id);

            if (feedbacks == null)
            {
                throw new Exception($"Feedback with id {feedback.Id} was not found");
            }

            List <Feedback> feedbackss = _feedbackRepository.GetAll().Where(x => x.Email == (FeedbackMapper.ToFeedback(feedback)).Email).ToList();

            if (feedbackss.Count == 3)
            {
                throw new Exception("Can't post anymore feedbacks you have already posted three");
            }
            Regex regex = new Regex(@"^([\w\.\-]+)@([\w\-]+)((\.(\w){2,3})+)$");
            Match match = regex.Match(feedback.Email);

            if (!match.Success)
            {
                throw new Exception("Email is not in correct format");
            }
            Feedback editFeedback = FeedbackMapper.ToFeedback(feedback);

            editFeedback.Id = feedback.Id;
            _feedbackRepository.Update(editFeedback);
        }