Example #1
0
        public IActionResult DownloadFile(string path)
        {
            byte[] fileBytes = _browser.DownloadFile(path);
            FileExtensionContentTypeProvider provider = new FileExtensionContentTypeProvider();
            string contentType;
            string fileName = Path.GetFileName(path);

            if (!provider.TryGetContentType(fileName, out contentType))
            {
                contentType = "application/octet-stream";
            }
            ContentDisposition cd = new ContentDisposition
            {
                FileName = fileName,
                Inline   = false
            };

            Response.Headers.Add("Content-Disposition", cd.ToString());
            Response.Headers.Add("X-Content-Type-Options", "nosniff");
            return(File(fileBytes, contentType, fileName));
        }