#asp.net #controls
#asp.net #элементы управления
Вопрос:
Мне нужно узнать название местоположения, в котором находится веб-пользовательский элемент управления. Что-то вроде HttpContext.Current.Запрос.Url.toString(), но я получаю только страницу для этого веб-пользовательского элемента управления.
Ответ №1:
Запрос.Url.Segments выдаст вам массив строк. Последний элемент — это страница
Комментарии:
1. Я использовал это, чтобы получить страницу:
var page = Request.Url.Segments.Last();
2. Последний элемент — это название страницы.
Ответ №2:
Вы должны попробовать Request.Url.LocalPath
свойство
string fileNameFromLocalPath = Path.GetFileName(Request.Url.LocalPath);
Ответ №3:
Этот код помогает:
string filename = Path.GetFileName(Request.Url.AbsolutePath);
Ответ №4:
Если вы попросите Page.getType.name вы получите имя основного элемента, страницы aspx. если вам нужно имя элемента управления ascx, над которым вы работаете, используйте меня.GetType.Name .toString если ваш элемент управления находится в каталоге MyDir, а имя вашего ascx — test.ascx, то результат будет
«ASP.MyDir_test_ascx»
Ответ №5:
Вы также можете использовать (VB.Net ):
Dim pageName as String = Page.GetType().Name
который заменяет .extension символом подчеркивания
Таким образом, из Default.aspx вам будет возвращен Default_aspx
Вы также можете использовать:
Dim pageName as String = CType(HttpContext.Current.CurrentHandler, Page).GetType().Name
Что приведет к тем же результатам, что и описано выше.