Используйте этот код:
HttpContext.Current.Server.MapPath("~")
Подробное описание:
Server.MapPath
указывает относительный или виртуальный путь для отображения в физический каталог.
Server.MapPath(".")
возвращает текущий физический каталог исполняемого файла (например, aspx) Server.MapPath("..")
возвращает родительский каталог Server.MapPath("~")
возвращает физический путь к корень приложения Server.MapPath("/")
возвращает физический путь к корню имени домена (не обязательно совпадает с корнем приложения) Например:
Предположим, вы указали приложение веб-сайта ( http://www.example.com/ ) на
C:\Inetpub\wwwroot
и установили (sub web как виртуальный каталог в IIS, помеченный как приложение) в
D:\WebApps\shop
Например, если вы вызываете Server.MapPath
в следующем запросе:
http://www.example.com/shop/products/GetProduct.aspx?id=2342
, тогда :
Server.MapPath(".") returns D:\WebApps\shop\products
Server.MapPath("..") returns D:\WebApps\shop
Server.MapPath("~") returns D:\WebApps\shop
Server.MapPath("/") returns C:\Inetpub\wwwroot
Server.MapPath("/shop") returns D:\WebApps\shop
Если Path начинается с перемотки вперед (/) или обратной косой черты (), метод MapPath
возвращает путь, как если бы Path был полным виртуальным путем.
Если Путь не начинается с slash, метод MapPath
возвращает путь относительно каталога обрабатываемого запроса.
Примечание: в C #, @ - оператор стенографической строки, означающий, что строка должна использоваться " как и "и не обрабатывается для управляющих последовательностей.
Сноски
Server.MapPath(null)
и Server.MapPath("")
также будут давать этот эффект.
Похоже, здесь лучше использовать обработку вложенных данных. Поэтому сначала получите корневое меню, а затем извлеките элементы, которые принадлежат определенной странице этого меню.
page = PAGE
page {
10 = FLUIDTEMPLATE
10 {
dataProcessing {
10 = TYPO3\CMS\Frontend\DataProcessing\MenuProcessor
10 {
special = rootline
special.range = 0|-1
special.reverseOrder = 1
as = rootline
dataProcessing {
10 = TYPO3\CMS\Frontend\DataProcessing\DatabaseQueryProcessor
10 {
if.isTrue.field = tx_myext_topofferitem
table = tx_myext_topofferitem
pidInList.field = uid
selectFields = tx_myext_topofferitem.*
join = tt_content_tx_topofferitem_mm ON tt_content_tx_topofferitem_mm.uid_foreign = tx_myext_topofferitem.uid
where.data = field:uid
where.intval = 1
where.wrap = tt_content_tx_topofferitem_mm.uid_local=|
orderBy = tt_content_tx_topofferitem_mm.sorting
as = tx_myext_topofferitem_items
}
}
}
}
}
}