У меня есть форма на HTML-странице, которую пользователь должен использовать для загрузки файла, который отправляется на страницу ASPX. В коде позади я хочу проверить, действительно ли файл загружен.HTTPRequest.Files.Count Never Equals Zero
if (Request.Files.Count > 0)
{
DoStuff(Request.Files[0]);
}
else
{
throw new Exception("A CSV file must be selected for upload.");
}
Я никогда не добираюсь до другого. Это то, как работает ASP.NET? Если у меня есть элемент ввода типа файла, всегда ли он будет загружать «файл», даже если он не выбран?
Каков правильный способ сделать это? Может быть, это?
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.");
}
К сожалению, если вы вообще получаете доступ к свойству Files, вы не можете впоследствии вызвать Request.GetBufferlessInputStream: «Этот метод или свойство не поддерживаются после вызова HttpRequest.Form, Files, InputStream или BinaryRead» – dudeNumber4
@ dudeNumber4 – kzh
Ну, это неправильно для меня, потому что мне нужно получить доступ к этому методу, чтобы вырезать (большие) загруженные файлы, чтобы они не были Если вам не нужен доступ к этому методу, я полагаю, что все в порядке. – dudeNumber4