Что не так с этим путем к файлу?
-
19-09-2019 - |
Вопрос
Привет, ребята,
У меня есть две папки под названием CSVLoad и Forms...У меня есть страница aspx внутри папки forms, в которой есть элемент управления fileupload.Я сохраняю загруженный файл в свою папку CSVLoad, я указал следующий путь
FileUpload1.SaveAs(Server.MapPath("CSVLoad//" + FileUpload1.FileName));
Я получаю исключение file not found...
Could not find a part of the path
'F:\WebSites\Payroll\Forms\CSVLoad\Employeesdata.csv'
Папка CSVLoad находится вне папки Forms (ie), обе являются папками корневого уровня моего приложения
Ответ :
FileUpload1.SaveAs(Server.MapPath("~/CSVLoad//" + FileUpload1.FileName));
из одного из предыдущих вопросов SO ASP.NET Сервер.Проблема с Mappath из внутренних папок
Решение
Если путь не начинается с косой черты, то он возвращает путь относительно текущего каталога, в котором находится страница, в данном случае Формы, которые я предполагаю.Если вы хотите, чтобы он отображал путь относительно корня вашего приложения, то вам следует поставить перед путем косую черту и использовать:
Server.MapPath("~/CSVLoad/" + FileUpload1.FileName);