考虑以下代码行:
classA<classB> C;
我想在运行时使用 System.Reflection 创建 C 的实例。为此,我需要在运行时知道 classA 和 classB 的类型。
我知道如何获得classB的类型
Type classBType = AssemblyContaingClassB.GetType("namespace.classB");
Q1> 如何使用这个classBType来获取classA的类型?
Q2> 我知道要在运行时创建实例,我们调用以下代码行:
object C = Activator.CreateInstance(TypeName);
要创建C的实例,上面的代码应该使用什么 TypeName?将 ClassA 的类型足以创建此实例
如果这个问题太基本,请提前致谢并道歉。我是 C# 的新手。
编辑:
问题已修复。从 pswg 的回答来看,使用泛型参数获取类的类型存在问题。关于如何获取泛型参数类型的解决方案可以在这里找到。之后我只是做了pswg的回答建议和它的工作。