小编MPh*_*tic的帖子

使用Reflection在运行时创建动态泛型

我试图通过检查键和值的类型并使用Reflection创建适当类型的新Dictionary 来将Dictionary < dynamic,dynamic >转换为静态类型.如果我知道键和值类型,我可以执行以下操作:

Type dictType = typeof(Dictionary<,>);

        newDict = Activator.CreateInstance(dictType.MakeGenericType(new Type[] { keyType, valueType }));
Run Code Online (Sandbox Code Playgroud)

但是,我可能需要创建一个Dictionary < MyKeyType,dynamic >如果值不是所有相同的类型,我无法弄清楚如何指定动态类型,因为

typeof(dynamic)
Run Code Online (Sandbox Code Playgroud)

是不可行的.

我将如何做到这一点,和/或是否有更简单的方法来完成我想要做的事情?

c# generics reflection dynamic

6
推荐指数
1
解决办法
1481
查看次数

标签 统计

c# ×1

dynamic ×1

generics ×1

reflection ×1