我需要找出网络用户控件所在的位置名称。像HttpContext.Current.Request.Url.ToString()之类的东西,但我只得到这个Web用户控件的页面。
答案 0 :(得分:12)
Request.Url.Segments将为您提供一个字符串数组。最后一项是页面
答案 1 :(得分:2)
您应该尝试Request.Url.LocalPath
属性
string fileNameFromLocalPath = Path.GetFileName(Request.Url.LocalPath);
答案 2 :(得分:1)
此代码有助于:
string filename = Path.GetFileName(Request.Url.AbsolutePath);
答案 3 :(得分:1)
如果您要求Page.getType.name,您将获得master的名称,即aspx页面。 如果你想要正在使用的ascx控件的名称,请使用 me.GetType.Name.ToString 如果您的控件位于MyDir目录中,并且ascx的名称是test.ascx,那么结果将是
" ASP.MyDir_test_ascx"
答案 4 :(得分:0)
您也可以使用(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
这将产生与上述相同的结果。