3

重複の可能性:
C# が独自のクラス名を取得する

Visual Studio では、クラス テンプレートを作成し、クラス自体の名前を保持する文字列フィールドを使用したいと考えています。出来ますか?

例えば:

public class MyClass
{
     public string TAG = GetClassName(this);
}       
4

3 に答える 3

9

非静的メソッドについて話すときは、インスタンスの正確なランタイム型 ( Type クラスのインスタンスへの参照) を返すObject.GetType メソッドを使用します。

this.GetType().Name

静的メソッドについて話すときは、MethodBase ClassとそのGetCurrentMethod Methodを使用します。

Type t = MethodBase.GetCurrentMethod().DeclaringType;
//t.Name 

ただし、これに関する詳細については、SOに関するこの投稿を参照してください。

于 2012-12-29T04:30:28.793 に答える
0
public string GetClassName(object item)
{
  return typeof(item).Name;
}
于 2012-12-29T04:30:28.550 に答える
0

以下を試してください:

this.GetType().Name

Type.Name -> 現在のメンバーの名前を取得します。

于 2012-12-29T04:30:59.207 に答える