2

すべてのページの基本クラスがあります。

//BASE CLASS
public class WebBasePage : Page
{
    protected override void OnLoad(EventArgs e)
    {
          base.OnLoad(e);
          string pageBaseTypeName = ????
          string pageBaseTypeNameMespace = ????
    }
}
//PAGE
public partial class T350112A : WebBasePage
{
    protected void Page_Load(object sender, EventArgs e)
    {
        //Some code.
    }
}

この基本クラスのOnLoadイベントで、基本クラスを呼び出したページのBaseType.Nameと名前空間を動的に取得する必要があります。

出来ますか?

4

1 に答える 1

4

ベースページの名前と名前空間ではなく、派生したクラス名と名前空間を取得することを想定しています(変更されることはないため)。GetTypeこの情報を取得するには、に電話をかけるだけです。

  public override void OnLoad(EventArgs e)
  {
       Type derivedType = GetType();
       string typeName = derivedType.Name;
       string namespace = derivedType.Namespace;
  }

GetType呼び出しは、実行中のタイプの情報を取得します。

于 2012-04-18T15:04:47.333 に答える