Как распаковать и вернуть файл вместо страницы в asp.net Page_Load ()? - PullRequest
0 голосов
/ 10 сентября 2009

Есть страница asp.net, получающая некоторые параметры запроса.

Когда все в порядке, он как-то возвращает файл для загрузки.

Если нет, вставляет сообщение об ошибке на эту страницу.

Файл не существует на жестком диске, он будет создан моей страницей.

Ты знаешь, как это сделать?

РЕДАКТИРОВАТЬ : На самом деле файл существует на жестком диске, но он встроен в другой файл, zip-файл. Поэтому я не могу просто перенаправить на файл URL. Мне нужно распаковать zip-файл, получить запрошенный файл, получить поток вывода.

1 Ответ

2 голосов
/ 10 сентября 2009
 Sub downloadRoutine(ByVal filePath As String)
        Dim fi As System.IO.FileInfo

        Response.ClearContent()
        Response.ClearHeaders()
        Response.ContentType = "application/unknown"
        Response.AddHeader("Content-Disposition", "attachment;filename=" + filePath)

        Try
            Response.WriteFile(fi.FullName)
        Catch ex As Exception
            ex.Message.ToString()
        End Try
        Response.End()
        fi = Nothing
    End Sub

для распаковки ..

http://social.msdn.microsoft.com/Forums/en-US/netfxbcl/thread/a343411d-f577-431b-92d7-5792912a7652

Прокрутите вниз до записи Чизо ..

Он предлагает .. http://dotnetzip.codeplex.com/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...