public async Task <IActionResult> DownloadAttachment(int id)
        {
            var qea = await _db.QueuedEmailAttachments.FindByIdAsync(id, false);

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

            if (qea.StorageLocation == EmailAttachmentStorageLocation.Blob)
            {
                var data = _queuedEmailService.LoadQueuedMailAttachmentBinary(qea);
                if (data != null)
                {
                    return(File(data, qea.MimeType, qea.Name));
                }
            }
            else if (qea.StorageLocation == EmailAttachmentStorageLocation.Path)
            {
                var path = qea.Path;
                if (path[0] == '~' || path[0] == '/')
                {
                    path = CommonHelper.MapPath(WebHelper.ToAppRelativePath(path), false);
                }

                if (!System.IO.File.Exists(path))
                {
                    NotifyError(string.Concat(T("Admin.Common.FileNotFound"), ": ", path));

                    return(RedirectToReferrer(null, () => RedirectToAction(nameof(List))));
                }

                return(File(path, qea.MimeType, qea.Name));
            }
            else if (qea.MediaFileId.HasValue)
            {
                return(RedirectToAction("DownloadFile", "Download", new { downloadId = qea.MediaFileId.Value }));
            }

            NotifyError(T("Admin.System.QueuedEmails.CouldNotDownloadAttachment"));
            return(RedirectToAction(nameof(List)));
        }