代码之家  ›  专栏  ›  技术社区  ›  Rekshino

在编译时获取类的属性名,而不进行对象实例化

  •  1
  • Rekshino  · 技术社区  · 6 年前

    是否可以获取类属性的名称(注意!)在编译时并且没有对象实例化?
    通过实例化,可以轻松地使用nameof()完成:

    class DummyClass
    {
        public int DummyProperty { get; set; }
    }
    void Meth()
    {
        //With instantiation
        var dc = new DummyClass();
        var prname = nameof(dc.DummyProperty);
    }
    
    1 回复  |  直到 6 年前
        1
  •  3
  •   UladzislaÅ­    6 年前

    你可以用 nameof(DummyClass.DummyProperty) ,如果我没听错的话。

    对于这样的用例,有一个类似的示例 docs .

    用于获取变量、类型或 成员 .