Пример #1
0
        public async Task <ActionResult> Get(string id1, string id2, string id3, string id4, string id5, int size, string ext)
        {
            var md5 = string.Concat(id1, id2, id3, id4, id5);

            var image = await ImageRepository.FindByMd5AndSizeAsync(new Guid(md5), size);

            if (image == null && size != 0)
            {
                image = await ImageRepository.FindByMd5AndSizeAsync(new Guid(md5), 0);
            }

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

            var type = await TypeRepository.FindByIdAsync(image.Type);

            var fileName = id5;

            if (size != 0)
            {
                fileName += $"_{size}";
            }
            fileName += $".{type.Ext}";

            return(File(image.Data, type.Mime, fileName));
        }