Я бы сказал, что если вы сохраняете fileUpload в сеансе, возможно, это не лучший способ решения вашей проблемы, о которой мы мало знаем.
Тем не менее, вы должны проверить, находится ли объект в сеансе, прежде чем приводить его как нечто в случае, если он был потерян.
if (Session["MySessionVar"] != null)
{
<type> myVar = (<type>)Session["MySessionVar"];
}
else
{
// set default/write warning to log/warn user
}