seo百家外链网站,做棋牌网站合法吗,余姚网站建设报价,深圳代理记账费用Assembly最重要的用法就是程序集反射类#xff0c;并创建类对象
下面通过domain获得所有程序集
再遍历程序集内所有的类型#xff0c;拿到Type
Assembly[] assemblies AppDomain.CurrentDomain.GetAssemblies();
foreach (Assembly assembly in assemblies)
{Type[] type… Assembly最重要的用法就是程序集反射类并创建类对象
下面通过domain获得所有程序集
再遍历程序集内所有的类型拿到Type
Assembly[] assemblies AppDomain.CurrentDomain.GetAssemblies();
foreach (Assembly assembly in assemblies)
{Type[] types assembly.GetTypes();foreach (Type type in types){。。。。}
}
拿到Type后就可以根据type创建对象了。 Type与Attribute的用法
//自定义Attribute
[AttributeUsage(AttributeTargets.Class)]
public class TypeNameAttribute : Attribute
{public string typeName { get; set; }public TypeNameAttribute(string type){typeName type;}
}[TypeName(TestTypeNameClass)]
public class MyClass
{public MyClass(){}
}
Assembly[] assemblies AppDomain.CurrentDomain.GetAssemblies();
foreach (Assembly assembly in assemblies)
{Type[] types assembly.GetTypes();foreach (Type type in types){TypeNameAttribute attribute type.GetCustomAttributeTypeNameAttribute();if (attribute ! null) //如果这个Class添加了TypeNameAttribute则attribute创建不为空{var instance Activator.CreateInstance(type);}}
} 上文Activator.CreateInstance得到的结果会是我们自定义创建的MyClass对象。