У меня есть приложение ASP.NET MVC, и я хочу добавить функцию загрузки файлов. Это мой обработчик:DirectoryNotFoundException при использовании SaveAs (FileUpload)
private void UploadWholeFile(HttpContext context, List<FilesStatus> statuses)
{
for (int i = 0; i < context.Request.Files.Count; i++)
{
var file = context.Request.Files[i];
var fullPath = Path.Combine(System.Web.HttpContext.Current.Server.MapPath("~/App_data/UploadedFiles/")) + Path.GetFileName(file.FileName);
file.SaveAs(fullPath);
string fullName = Path.GetFileName(file.FileName);
statuses.Add(new FilesStatus(fullName, file.ContentLength, fullPath));
}
}
Когда я тест (локально), я всегда получаю эту ошибку: DirectoryNotFoundException: Не удалось найти часть пути .....
Странная вещь is: Я нашел файл в папке UploadedFiles после теста! Так почему я получаю эту ошибку?
какая строка кода дает исключение? – iJade
SaveAs не создает новые каталоги. Поэтому, если у вас есть App_data и нет UploadedFiles, вы получаете это исключение. Сначала проверьте, есть ли UploadedFiles. – Rayet
file.SaveAs (fullPath) дает исключение, и папка UploadedFiles действительно существует, я даже могу найти файл в нем после теста ... – Sam