Недавно я приступил к созданию собственных компонентов асинхронной загрузки файлов для ASP.NET. Я извлек уроки из проекта FileUpload Даррена Джонстона и создал HttpModule для извлечения файлов из отправленных данных.
У меня все работает как надо при тестировании с VS 2008 с использованием сервера разработки. Я даже зашел так далеко во время тестирования, чтобы убедиться, что запрос перехватывается модулем до того, как файлы начнут загружаться. После того, как я был удовлетворен всем, я развернул проект на нашем веб-сервере (Win 2008 с IIS 7). Я был в ужасе, узнав, что элементы управления не функционировали при развертывании.
После некоторой удаленной отладки я обнаружил, что событие HttpApplication.AuthenticateRequest (мое местоположение для подключения к процессу) не вызывается до тех пор, пока файлы не будут полностью загружены.
Я проверил все, что мог придумать, и до сих пор не смог найти причину такого изменения в поведении. Есть идеи?