#.net #c#-4.0 #server.mappath
#.net #c # -4.0 #server.mappath
Вопрос:
Мне нужно получить доступ к папке в ~/Templates в моем приложении. Я не получил предложения для server.MapPath. Почему так?
Кроме того, я попытался использовать среду HostingEnvironment.MapPath и System.Web.HttpContext.Current.Сервер.MapPath.Но он возвращает null. Есть ли какое-либо решение для этого?
var path = System.Web.HttpContext.Current.Server.MapPath("~/Templates");
Комментарии:
1. Просто чтобы понять основы: выполняется ли это в HttpContext, то есть: из-за запроса к веб-приложению?
2. В идеале, пусть приложение-потребитель сообщает библиотеке классов, где находятся используемые шаблоны. Не пытайтесь определить среду, в которой вы работаете.
3. К вашему сведению: «Сервер» в
Server.MapPath(..)
— это не глобальный объект, а свойство класса Page. Итак, за пределами страницы (или usercontrol) она не существует — вот почему вы «не получили предложения»