从结构类型获取静态属性

时间:2019-02-15 06:42:30

标签: c# .net

我想列出结构类型的所有静态属性。我不创建该结构的实例,而是将其用作类型。

我需要的是列出此结构的所有属性(从结构而不是此结构的实例)。这可能吗?

类似这样:

CommUser.GetType.GetProperties();

我的结构:

public struct CommUser
{
   public static string pcUSER_URI_R97 {get;set;}        
   public static string pcUSER_URI_R98 {get;set;}   
}

1 个答案:

答案 0 :(得分:1)

您差一点就拥有了

var names = typeof(CommUser).GetProperties(BindingFlags.Static|BindingFlags.Public)
                            .Select(x => x.Name);    
foreach (var name in names)
    Console.WriteLine(name);

输出

pcUSER_URI_R97
pcUSER_URI_R98

Full Demo Here


其他资源

typeof (C# Reference)

  

用于获取类型的System.Type对象

GetProperties(BindingFlags)

  

在派生类中重写时,搜索   当前类型,使用指定的绑定约束。

BindingFlags Enum

  
      
  • Public指定要在搜索中包含公共成员

  •   
  • Static指定要在搜索中包括静态成员。

  •