Member 10611055 Ответов: 1

Как загрузить файл размером 10 ГБ+ в ASP.NET с#


Я пытаюсь загрузить файл размером более 10 ГБ+, и есть несколько файлов, которые я хочу загрузить на сервер.

Я внес некоторые изменения в Web.config, чтобы загрузить большие файлы.

Что я уже пробовал:

&ЛТ;система.веб&ГТ;
&ЛТ;компиляция отладка="истинный" targetframework="4.5"и GT;
< httpruntime executiontimeout= "6000000" maxrequestlength= "2147483647">


< system. webserver>
< безопасность>
& lt;requestfiltering>
<requestlimits maxallowedcontentlength= "2147483647">




Но он поддерживает только размер файла до 2 ГБ. Я делаю слишком много исследований,но не могу получить ничего, что помогло бы мне загрузить файл размером 10 ГБ+.

Я читал какую-то статью, в которой говорилось, что максимальный размер файла составляет 2 ГБ

Максимальное значение maxRequestLength?

IIS 7 httpruntime maxRequestLength предел 2097151

https://blogs.msdn.microsoft.com/prashant_upadhyay/2011/07/12/large-file-upload-issue-in-asp-net/

Я нашел несколько хаков, которые я нарезаю файл на стороне клиента (браузер) и загружаю этот весь срез на сервер, а после этого объединяю весь этот срез в один файл.

Но это может быть неправильной идеей сделать это, если какой-то фрагмент файла не удалось загрузить или пропустить, так что файл может быть поврежден.

Я не хочу реализовывать технику среза, загрузки и слияния файлов для загрузки большого файла.

Существует любой другой способ сделать загрузку больших файлов (размер 10 ГБ+) с помощью ASP.NET и C#.

Спасибо.

1 Ответов

Рейтинг:
2

Philippe Mori

Загрузка очень большого файла в любом случае может быть ненадежной для всех пользователей, поэтому сделать срез было бы хорошей идеей. Очевидно, что вам понадобится код so, чтобы убедиться, что вы получили все срезы (и что они не повреждены) и повторно отправили отсутствующие или поврежденные срезы. В любом случае вы не захотите использовать обработку по умолчанию для таких больших файлов, так как загрузка файла может занять несколько часов, и вам нужно будет отправить некоторую обратную связь пользователю.

Джон Галлоуэй-загрузка больших файлов в ASP.NET[^]

HTML загрузчик больших файлов[^]

Вы также можете подумать о создании отдельного приложения, позволяющего пользователю отправлять большие файлы. Затем вы сможете дать им лучшую обратную связь о прогрессе и, возможно, разрешить некоторую настройку для достижения наилучшей производительности, а также, возможно, реализовать приостановку загрузки и перезапуск частичной загрузки после сбоя или перезагрузки компьютера.