如果没有空的默认构造函数,是否可以使用反射动态调用构造函数?

时间:2009-08-20 13:39:27

标签: reflection dynamic constructor invoke

我正在使用GetParameter来确定构造函数需要哪些参数。我可以得到他们的清单。现在我想调用ctor。如果没有空的话,这可能吗?

2 个答案:

答案 0 :(得分:3)

哪种语言? 对于c#,您可以使用

Activator.CreateInstance(typeof(X), constructorparm1, constructorparam2...)

答案 1 :(得分:1)

这是你在找什么?这将创建一个SqlConnection实例,将一个字符串传递给构造函数。如果要传递更多值,只需将它们添加到数组中即可。

        SqlConnection conn;
        conn = (SqlConnection)System.Activator.CreateInstance(typeof(SqlConnection), new object[] { "Server=myserver" });
        Console.WriteLine(conn.ConnectionString);