1) Можно ли возобновить загрузку файлов на клиенте без использования flash / java / Silverlight?
Нет. Сам протокол HTTP не поддерживает возобновление частичной загрузки, поэтому даже если вы использовали flash или silverlight, вам все равно придется использовать что-то еще, например FTP, на сервере.
Я «решил» эту проблему в прошлом, написав пользовательское клиентское приложение на C #, которое разбивало файл на небольшие куски (2 мг), передавало их по отдельности, а затем сервер объединял их все вместе.
2) У кого-нибудь есть какой-нибудь код или ссылка на статью, объясняющую, как написать .NET HTTPHandler, который позволит потоковую загрузку и индикатор выполнения ajax?
Хотя это не решает проблему «возобновления», я использовал SWFUpload на стороне клиента, и это сработало блестяще. Он предоставляет интеллектуальный файловый браузер (в котором вы можете запрашивать у пользователя только JPEG-файлы и т. Д.) И загружать отслеживание прогресса, и все это без необходимости изменять ваш сервер.