HTTPRequest.Files.Count Never Equals Zero

У меня есть форма на HTML-странице, которую пользователь должен использовать для загрузки файла, который отправляет на страницу ASPX. В приведенном ниже коде я хочу проверить, файл действительно был загружен.

if (Request.Files.Count > 0)
{
    DoStuff(Request.Files[0]);
}
else
{
    throw new Exception("A CSV file must be selected for upload.");
}

Я никогда не доберусь до остального. Это просто как ASP. NET работает? Если у меня есть элемент ввода типа file, всегда ли он будет загружать «файл», даже если он не выбран?

Как это правильно сделать? Может быть, это?

if (Request.Files.Count > 0 && Request.Files[0].ContentLength > 0)
{
    DoStuff(Request.Files[0]);
}
else
{
    throw new Exception("A CSV file must be selected for upload.");
}
8
задан kzh 10 December 2010 в 18:22
поделиться