gpt4 book ai didi

c# - 如何在 ASP.NET 中找到当前页面的(文件)名称?

转载 作者:太空狗 更新时间:2023-10-29 20:53:34 25 4
gpt4 key购买 nike

如何在后台代码中找到 (default.aspx) 当前页面或 Web 控件的名称?

我想写一个使用这个名字的父类(super class)。

最佳答案

你的意思是要找到当前执行对象的原始文件名?即,您要从控件 MyControl 中检索 MyControlOnDisk.ascx?通常,此信息在编译时会丢失,而且,许多页面和控件都是基于部分类构建的,它们来自的文件名被编译到单个程序集中。

对于页面,您可以使用以下内容,但前提是该页面未在内部重定向,未从另一个页面实例化为类,它不是母版页并且您不在静态方法中:

string currentPageFileName = new FileInfo(this.Request.Url.LocalPath).Name;

在控件的情况下,据我所知通常是不可能的(它被编译掉了),但也许有人可以阐明这一点。

"i want to write a superclass that use this name "

我假设你的意思是写一个子类?如果您编写一个父类(super class),您只需创建一个虚拟方法并在您的子类(页面)中实现它。如果你想创建一个子类,你可以取页面的类名,如下所示:

// current page
public partial class MyLovelyPage : System.Web.UI.UserControl

并像这样使用它来派生它:

public partial class NewDerivedPage : MyLovelyPage

关于c# - 如何在 ASP.NET 中找到当前页面的(文件)名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3594353/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com