public class TestClass
{
private string _value;
public TestClass()
{
}
public TestClass(string value)
{
_value = value;
}
public string GetValue(string prefix)
{
。。。。。。
}}
Type t = typeof(ClassLibrary1.TestSpace);
object[] obj = new object[] { "timmy" };
PropertyInfo[] p = t.GetProperties();
MethodInfo[] m = t.GetMethods();
object DOBJ = Activator.CreateInstance(t,obj);
最后一步出现无法找到构造函数的错。
http://www.cnblogs.com/CreateMyself/p/4680229.html
Type t = typeof(ClassLibrary1.TestSpace);
应该是TestClass。
原来如此
感觉反射好难懂啊,自己写好难写出来
@灬丶: 从Type中去挖掘对象的MemberInfo,如果是字段就是派生于MemberInfo的FiledInfo,如果是属性就是PropertyInfo(同样也从memberInfo派生,后同),如果是构造函数就是ConstructInfo咯,依次类推。
如果在一个MemberInfo上有attribute,那么就从拿到的这个MemberInfo上再去拿CustomAttribute咯。
如果我要去执行一个方法(包括构造函数),那么就需要你先拿到这个MethodInfo,在拿的时候肯定有条件了,比如可见性(BindingFlag),每个参数的类型(方便区分重载)。拿到后当然就要把参数塞进去了,最后invoke下就可以了。
再放广点,同样也可以衍生到对程序集,泛型等做这种操作。