Beispiel #1
0
        public async Task <AnimatedImage[]> GetAnimatedImagesForPage(string pageURL)
        {
            //получаем папку поста из его url
            string postFolder = _FolderFromURL.GetFolderFromURL(pageURL);

            //получаем префикс блоба, и по нему будем искать уже выборку
            string blobPrefix = _Formatter.GetBlobNamePrefix(postFolder);

            var gifsForPage = await(from gif in _AnimatedImages where (gif.BlobName.StartsWith(blobPrefix)) select gif).ToListAsync();

            //вроде как никогда null не может вернуть
            return(gifsForPage.ToArray());
        }
Beispiel #2
0
        public async Task <AnimatedImage[]> GetAnimatedImagesForPage(string pageURL)
        {
            //получаем папку поста из его url
            string postFolder = _FolderFromURL.GetFolderFromURL(pageURL);

            //получаем префикс блоба, и по нему будем искать уже выборку
            string blobPrefix = _Formatter.GetBlobNamePrefix(postFolder);

            var gifsNotTwitted = (from gif in _AnimatedImages.AsQueryable() where (gif.BlobName.StartsWith(blobPrefix) && gif.TweetDate == null) select gif).Take(_TopQueryCount);

            var list = await gifsNotTwitted.ToListAsync();

            if (list.Count > 0)
            {
                int             ind    = _RandomSelector.GetRandomIndex(list.Count);
                AnimatedImage   img    = list[ind];
                AnimatedImage[] result = new AnimatedImage[] { img };
                return(result);
            }

            return(null);
        }