在类本身中获取类名

时间:2012-12-29 04:28:23

标签: c#

  

可能重复:
  C# getting its own class name

对于Visual Studio,我想创建一个类模板并使用一个字符串字段来保存类本身的名称。有可能吗?

例如:

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

3 个答案:

答案 0 :(得分:7)

在谈论非静态方法时,使用Object.GetType Method返回实例的确切运行时类型(对Type Class实例的引用):

this.GetType().Name

在谈论静态方法时,请使用MethodBase Class及其GetCurrentMethod Method

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

但是,有关详细信息,请参阅this post on SO

答案 1 :(得分:0)

public string GetClassName(object item)
{
  return typeof(item).Name;
}

答案 2 :(得分:0)

请尝试以下操作:

this.GetType().Name

Type.Name - >获取当前成员的名称。