Вам действительно нужен этот путь во время конструктора? Если вам это не нужно, пока не начнется цикл главной страницы, подумайте об отсрочке - просто используя обычное свойство; что-то вроде
public string BasePath {
get { return Server.MapPath("~/TheFolder/"); }
}
Тогда, когда это используется во время цикла страницы, все должно быть хорошо. Вы можете кэшировать его, если вы действительно хотите, но я не думаю, что это будет узким местом:
private string basePath;
public string BasePath {
get {
if(basePath == null) basePath = Server.MapPath("~/TheFolder/");
return basePath;
}
}