获取您的类型的所有公共静态字段:
Type type = typeof(SiteDetails);
var flags = BindingFlags.Static | BindingFlags.Public;
var fields = type.GetFields(flags); // that will return all fields of any type
Run Code Online (Sandbox Code Playgroud)
IsLiteral
如果要仅检查常量,可以添加过滤.
var fields = type.GetFields(flags).Where(f => f.IsLiteral);
Run Code Online (Sandbox Code Playgroud)
然后检查任何字段的值是否等于您的值:
string value = "MainCollege"; // your value
bool match = fields.Any(f => value.Equals(f.GetValue(null)));
Run Code Online (Sandbox Code Playgroud)