日期:2014-05-16  浏览次数:20406 次

如何dynamic 转换成实际类型 并实例化
本帖最后由 u014569752 于 2014-04-06 17:53:19 编辑

//部分代码
  public List<T> GetEntitiesByTable<T>(DataTable table, dynamic dync) where T : new()
        {
               T entity = dync == null ? new T() : dync;     }

//使用
dynamic dync=new Dept();
List<dynamic> user=GetEntitiesByTable(dt,dync);


问题: T entity = dync == null ? new T() : dync; 如何将dync转换成其他类型。(也就是将T类型转换成实际dynamic的类型,并实例化)。现在这样写,循环出来每一条值是一样的。
试过T entity = dync == null ? new T() : dync.GetType();这样也不行。

谢谢
------解决方案--------------------
  public List<T> GetEntitiesByTable<T>(DataTable table, T dync) where T : new()
   {
               return dync == null ? new T() : dync;    
  }

这里用dynamic是捣乱。
------解决方案--------------------
dynamic转换为object再反射。