Лучще всего ИМХО в сессии, можеш конечно и куки пользовать.
Но ещё нужно учитывать характер работы с приложением. Если: загрузился, поработал, закрыл браузер - то ладно. А если: открыл браузер утром, потом сходил пообедать и т.д. - когда убивается сессия, нужно организовать переход на страницу логина.
Всё зависит от того как ты это реализуеш, ведь если я не ошибаюсь, то всю процедуру аплоада ты пишеш ручками.
Если из Request.Files читать StreamReader'ом, то какая-нибудь IO-ошибка. (Если вообще дело дойдёт до обработчика события формы.)
По повододу префиксов.
Префиксы устанавливаются при регистрации сборки на форме (в 2.0).
<%@ Register TagPrefix="pfx" Namespace="Test" Assembly="Test" %>
Префиксы устанавливаются при регистрации контрола на форме (в 1.0 и выше).
<%@ Register TagPrefix="ctl" TagName="Test" Src="Test.ascx" %>