Пример #1
0
        public void ServiceMustGet()
        {
            var service = new MediaService(this.context);
            var result  = service.Get();

            Assert.NotNull(result);
        }
        public IHttpActionResult Get(int id)
        {
            var media = _mediaService.Get(id);

            if (media == null)
            {
                return(NotFound());
            }

            var entityMedia         = _entityMediaService.FirstOrDefault(x => x.MediaId == id);
            MediaReponseModel model = null;

            //todo: verify permissions to see if media can be viewed by logged in user
            switch (entityMedia.EntityName)
            {
            case "Skill":
                model = media.ToModel <Skill>(entityMedia.EntityId, _mediaService, _mediaSettings, _generalSettings, _userService,
                                              commentService: _commentService,
                                              likeService: _likeService,
                                              withSocialInfo: true,
                                              withNextAndPreviousMedia: true,
                                              avoidMediaTypeForNextAndPreviousMedia: true);
                break;

            case "UserSkill":
                model = media.ToModel <UserSkill>(entityMedia.EntityId, _mediaService, _mediaSettings, _generalSettings, _userService,
                                                  commentService: _commentService,
                                                  likeService: _likeService,
                                                  withSocialInfo: true,
                                                  withNextAndPreviousMedia: true,
                                                  avoidMediaTypeForNextAndPreviousMedia: true);
                break;

            default:
                model = media.ToModel(_mediaService, _mediaSettings, _generalSettings, _userService,
                                      commentService: _commentService,
                                      likeService: _likeService,
                                      withSocialInfo: true,
                                      withNextAndPreviousMedia: true);
                break;
            }


            return(RespondSuccess(new { Media = model }));
        }