Страница ASPX для загрузки любого типа файла из определенного каталога на веб-сервере - PullRequest
0 голосов
/ 29 марта 2012

У меня было быстрое требование от моего клиента, чтобы он хотел сохранить некоторые файлы в папке на веб-сервере (у нас есть временная папка, у которой есть права, чтобы разрешить всем).

Он хочет разместить файлв этом напрямую и дайте ссылку, например, http://www.abcd.com/temp/somefile.rdl своему клиенту, чтобы напрямую загрузить файл.

Есть ли какая-либо готовая aspx-страница, чтобы я мог просто использовать этот путь набора страниц в папке идолжен работать следующим образом.

Если не могу, я быстро создаю его, используя только страницу aspx.

Я почти сделал это с помощью следующего кода в aspx

<%
Response.AppendHeader("Content-Disposition", "attachment; filename=\"" + Server.MapPath("~/TempReport/"+Request.QueryString["file"]) + "\"");
Response.ContentType = "Application/cab";
Response.TransmitFile(Server.MapPath("~/TempReport/"+Request.QueryString["file"]));
Response.End();
%>

Единственныйпроблема в том, что я могу загрузить только файл типа cab из-за следующей строки:

Response.ContentType = "Application/cab";

Я хочу, чтобы загружался любой тип файла.

1 Ответ

1 голос
/ 01 апреля 2012

Проверьте этот пост для ответа, чтобы получить MIME-тип, который должен быть установлен для вашего контента. Тип

Используя .NET, как вы можете найти MIME-тип файла на основе сигнатуры файла, а нерасширение

Или вы можете просто поставить, что должно нормально работать для загрузки бинарного файла.Response.ContentType = "application / octet-stream";

        Page.Response.ContentType = "application/octet-stream"
        Page.Response.AddHeader("Content-Disposition", "attachment; filename=""" & strFilename & """")
        Page.Response.OutputStream.Write(objAttachment.Data, 0, objAttachment.Data.Length)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...