コード例 #1
0
ファイル: ActivityMappings.cs プロジェクト: Minitry/HobbySite
        public static ActivitiesDTO Map(Activities source, ActivitiesDTO target)
        {
            target.ActivityName = source.ActivityName;
            target.Id           = source.Id;

            return(target);
        }
コード例 #2
0
        /// <summary>
        /// Used to get all the activities in the table
        /// </summary>
        /// <returns></returns>
        public async Task <List <ActivitiesDTO> > GetAllActivities()
        {
            List <ActivitiesDTO> aDTO       = new List <ActivitiesDTO>();
            List <Activities>    activities = await _context.Activities.ToListAsync();

            foreach (var item in activities)
            {
                ActivitiesDTO dTO = ConvertToDTO(item);
                aDTO.Add(dTO);
            }
            return(aDTO);
        }
コード例 #3
0
        /// <summary>
        /// used to retrieve an activity by it's ID
        /// </summary>
        /// <param name="ID"></param>
        /// <returns></returns>
        public async Task <ActivitiesDTO> GetActivity(int ID)
        {
            var Activity = await _context.Activities.FindAsync(ID);

            ActivitiesDTO dTO = ConvertToDTO(Activity);

            dTO.Reviews = await GetReviewsById(ID);

            dTO.TagDTO = await GetTagbyActivityID(ID);

            return(dTO);
        }
コード例 #4
0
        /// <summary>
        /// Converting Activities to DTO
        /// </summary>
        /// <param name="activities">Activities object</param>
        private ActivitiesDTO ConvertToDTO(Activities activities)
        {
            ActivitiesDTO aDTO = new ActivitiesDTO()
            {
                ID           = activities.ID,
                Title        = activities.Title,
                Description  = activities.Description,
                Location     = activities.Location.ToString(),
                ExternalLink = activities.ExternalLink,
                Rating       = activities.Rating,
                ImageUrl     = activities.ImageUrl
            };

            return(aDTO);
        }
コード例 #5
0
        /// <summary>
        /// Allows us to create the activities as well as utilize our DTOs to normalize the data
        /// </summary>
        /// <param name="activities">The DTO object that is being passed in from front end</param>
        public async Task <ActivitiesDTO> CreateActivity(ActivitiesDTO activitiesDTO)
        {
            List <TagDTO> tDTOList = activitiesDTO.Tags;

            // Creating a object that will be stored in database
            Activities activities = new Activities()
            {
                Title    = activitiesDTO.Title,
                Location = activitiesDTO.Location != null?Enum.Parse <Location>(activitiesDTO.Location) : (Location)3,
                               Description  = activitiesDTO.Description,
                               Rating       = activitiesDTO.Rating,
                               ExternalLink = activitiesDTO.ExternalLink != null ? activitiesDTO.ExternalLink : "",
                               ImageUrl     = activitiesDTO.ImageUrl != null ? activitiesDTO.ImageUrl : @"https://i.imgur.com/3GnqQ7Q.png",
            };

            _context.Activities.Add(activities);
            await _context.SaveChangesAsync();

            /// Calling a method that will link Activities and Tag
            await CreateTaskActivityByID(tDTOList);

            return(activitiesDTO);
        }
コード例 #6
0
        public async Task <ActionResult <Activities> > PostActivities(ActivitiesDTO activities)
        {
            var activity = await _context.CreateActivity(activities);

            return(CreatedAtAction("GetActivities", new { id = activity.ID }, activity));
        }
コード例 #7
0
ファイル: ActivityMappings.cs プロジェクト: Minitry/HobbySite
        public static ActivitiesDTO MapToDTO(this Activities source)
        {
            var target = new ActivitiesDTO();

            return(Map(source, target));
        }