public HttpResponseMessage PostAddImageToAlbum(PictureModel picture, int albumId, string sessionKey)
        {
            try
            {
                var userService = new UserService();
                var user        = userService.GetUserBySessionKey(sessionKey);

                Validator.ValidateUser(user, "Cannot add image to album");

                var albumService = new AlbumService();
                var album        = albumService.GetAlbumById(albumId);

                Validator.ValidateAlbum(album, ALBUM_NOT_FOUND);


                if (album.User.Id != user.Id)
                {
                    throw new Exception(USER_ACCESS_DENIED);
                }

                var newPicture = albumService.AddPictureToAlbum(picture, album);

                var pictureToReturn = new PictureModel()
                {
                    CreateDate  = newPicture.CreateDate,
                    Description = newPicture.Description,
                    Id          = newPicture.Id,
                    Url         = newPicture.Url,
                    Title       = newPicture.Title
                };

                return(this.Request.CreateResponse(HttpStatusCode.OK, pictureToReturn));
            }
            catch (Exception ex)
            {
                return(this.Request.CreateResponse(HttpStatusCode.BadRequest, ex.Message));
            }
        }