我试图从针对类型GetFields
方法运行的 linq 查询中获取基础类型。在我的例子中,我有:
string mClass = "Computer"; //match string
var t = typeof(SystemMonitoringClass);
var monitoringClass = (SystemMonitoringClass)t.GetFields().First(x => x.Name == mClass);
我的第 3 行中的转换失败,因为我无法将返回类型FieldInfo
转换为我正在寻找的类型。所以在找到正确的字段后,我怎样才能得到实际的对象。此解决方法是由于新的 SCOM 2012 SDKSystemMonitoringClass
从枚举更改为类。如果有人有更好的方法来匹配字符串并在这种情况下获取实际的监控对象或字段,那也可以。