我正在尝试在运行时在我的代码中动态创建类型化数据集的实例。我有可用的类型,但是当我尝试这样做时:
object obj = Activator.CreateInstance(Type.GetType("TYPED DATASET TYPE HERE"));
问题是当我尝试运行它时,根据代码,该类型似乎无效。我在这里做错了什么?
我正在尝试在运行时在我的代码中动态创建类型化数据集的实例。我有可用的类型,但是当我尝试这样做时:
object obj = Activator.CreateInstance(Type.GetType("TYPED DATASET TYPE HERE"));
问题是当我尝试运行它时,根据代码,该类型似乎无效。我在这里做错了什么?
类型在哪里定义?(哪个大会)。
除非您给它一个程序集限定名称,否则它只会查看调用程序集和其他一些关键程序集。选项:
Assembly
实例(从该程序集中的已知类型),并GetType(fullyQualifiedName)
在Assembly
实例上使用假设您发出正确的数据集代码,您可能还需要加载程序集。
查看以下 .net 命名空间反射.emit 和反射。
您还可以查看诸如 windsor 之类的开源项目,它们使用反射来发出新类以创建拦截器。那里可能有你可以学习的代码。