mjr*_*odt 0 c# reflection entity-framework
我试图从实体框架对象中的多个属性获取值.共有11个属性,每个属性都分配了一个日期.我尝试过使用反射,但我一直收到错误"对象与目标类型不匹配"
 public void CheckWeekStatus()
    {
     var currentFlexi = from c in FlexiContext.FlexPeriods where c.FlexiCurrentYear == true select c;
     FlexPeriod s = new  FlexPeriod();
    PropertyInfo[] properties = s.GetType().GetProperties(BindingFlags.Public | BindingFlags.Instance);
      foreach (var info in properties)
           {                     
             var o = info.GetValue(currentFlexi,null);                                        
           }
     }
FlexPeriod是包含所有属性的类型.我可以遍历属性,但显然我正在尝试访问值的方式有问题.任何建议,将不胜感激.
首先,您可以在Type不实例化对象的情况下获取:
PropertyInfo[] properties = typeof( FlexPeriod ).GetProperties( ...
GetValue失败的原因是对象currentFlexi的集合FlexPeriod(实际上是一个IEnumerable<FlexPeriod>),而不是单个实例FlexPeriod.