Сохранить изображение в папке, используя относительный путь в asp.net С#

avatar
Narender Godara
8 апреля 2018 в 08:35
1797
2
2

Я пытаюсь сохранить изображение в папке, используя относительный путь. Мой код

bmp1.Save(@"~/mintemp/" + filename, jgpEncoder, myEncoderParameters);

Я получаю сообщение об ошибке, подобное этому.

Общая ошибка в GDI+

Но когда я меняю путь, как показано ниже

bmp1.Save(@"E:\web data\website\mintemp\" + filename, jgpEncoder, myEncoderParameters);

Код работает нормально при абсолютном пути. Может ли кто-нибудь помочь мне решить эту проблему, потому что я хочу сохранить относительный путь. Заранее спасибо, извините за мой плохой английский.

Источник

Ответы (2)

avatar
PSK
8 апреля 2018 в 08:40
1

Попробуйте использовать Server.MapPath. Метод MapPath сопоставляет указанный относительный или виртуальный путь с соответствующим физическим каталогом на сервере.

Обратите внимание, что Server.MapPath(@"~/mintemp/") возвращает физический путь к папке mintemp, находящейся в корневом каталоге приложения

.
bmp1.Save(Server.MapPath(@"~/mintemp/") + filename, jgpEncoder, myEncoderParameters);
avatar
Pierre-Adrien Maison
8 апреля 2018 в 08:41
1

Вы можете использовать функцию Server.MapPath для получения относительного пути.

В вашем случае это будет: Server.MapPath("E:\web data\website\mintemp\" + filename). Он возвращает строку, которую вы можете использовать в своем методе Save.

Дополнительные пояснения здесь: https://forums.asp.net/t/1813648.aspx?Any+difference+between+Server+MapPath+and+Server+MapPath+