Среднее доверие для загрузки большого файла в Asp.Net - PullRequest
0 голосов
/ 15 января 2011

Мне нужна поддержка загрузки большого файла в моем размещенном (godaddy) средне-доверительном приложении asp.net.
Очевидно, что оно должно быть отзывчивым с указанием прогресса, поэтому очень важно обрабатывать поток самостоятельно.

Все это кажется довольно простым и хорошо работает при полном доверии:
1. Запишите HttpModule, который прослушивает загрузки файлов.
2. Получите объект HttpWorkerRequest из контекста, используя отражение.
3. Запишите потокв FileStream

Все очень хорошо, за исключением того, что я продолжаю получать исключения из прав доступа при попытке получить объект HttpWorkerRequest из контекста со средним уровнем доверия.Использую ли я отражение или использую System.IServiceProvider.GetService (), чтобы получить объект (который явно использует отражение), я получаю ту же ошибку.

Я также пытался использовать System.Web.HttpPostedFile.У него есть свойство InputStream.Но кажется, что этот объект загружает весь файл при инициализации, так что ничего хорошего.

Я гуглил себя усталым и не могу найти другой альтернативы.

Даже если это угроза безопасностичтобы позволить пользователям иметь объект HttpWorkerRequest, несомненно, инфраструктура предоставляет другой способ обработки потока файлов, когда Method = "POST" и enctype = "multipart / form-data"

Любые идеи были бы хорошими
Спасибо

1 Ответ

0 голосов
/ 15 января 2011

Вы также можете попробовать прочитать с context.Request.InputStream.

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