АСП.НЕТ:Путь.Объединить с относительными путями.
-
18-09-2019 - |
Вопрос
Я пытаюсь преобразовать «~/Uploads/Images/» в абсолютный путь, из которого я могу создать FileStream.Я пробовал VirtualPathUtility и Path.Combine, но, похоже, ничего не дало мне правильный путь.Ближе всего я получил VirtualPathUtility.ToAppRelative, но это было просто расположение файла как прямого дочернего элемента C:.
Должен быть способ сделать это.
Решение
Вы ищете MapPath
метод.
// get the path in the local file system that corresponds to ~/Uploads/Images
string localPath = HttpContext.Current.Server.MapPath("~/Uploads/Images/");
Используйте его вместе с Path.Combine для создания пути к файлу:
string fileName = Path.Combine(
HttpContext.Current.Server.MapPath("~/Uploads/Images/"),
"filename.ext");
using (FileStream stream = File.OpenRead(fileName))
{
// read the file
}
Не связан с StackOverflow