有没有一种方法来检索一个类的文件名?

有没有一种方法来检索一个类的文件名?

问题描述:

是否有方法来检索一个类的文件名?有没有一种方法来检索一个类的文件名?

具体来说,我想在基类(BasePage)中创建一个静态方法(CreateLink)来自动返回调用页面的路径和文件名。在.C#ASP.NET

我的代码

private const string TEMPLATE = 
    "~/One.aspx"; 

public static HyperLink CreateLink() 
{ 
    HyperLink link = new HyperLink(); 
    link.Text = "Click here"; 
    link.NavigateUrl = String.Format(TEMPLATE); 
    return link; 
} 

是否有可能避免使用硬编码模板变量?是否有可能从文件名和位置检索One.aspx路径?

+0

你想要哪个页面的路径? – SLaks 2010-06-09 14:31:36

+0

你的问题不清楚,你想访问给定路径的文件名,或者你想从请求变量中提取文件名? – 2010-06-09 16:54:02

您可以通过检查HttpContext.Current.Request.Path来获取当前请求的页面的路径。

+0

HttpContext.Current.Request.Path获取当前请求的路径。我希望能够检索下一个请求的路径。 :-) – 2010-06-09 14:47:09

+0

接下来的要求是什么? – SLaks 2010-06-09 15:12:58

要使用反射,你可以使用得到实际的代码隐藏文件名如下:

using System.Diagnostics; 

StackTrace stackTrace = new StackTrace(true); 
StackFrame frame = stackTrace.GetFrame(0); 
string s = frame.GetFileName(); 
+0

这在_many_级别上是错误的,并且不可能工作。 – SLaks 2010-06-09 15:13:24

+0

采取了点,但它确实回答“有没有方法来检索一个类的文件名?”这个问题的一部分,但我应该仔细阅读整个问题...... – 2010-06-09 15:52:58

你是什么意思的一类文件名?你需要从给定的路径获取文件名?试试这个

Path.GetFileName(HttpContext.Current.Request.Path)