zoukankan      html  css  js  c++  java
  • 初步了解反射案列

    internal class Program
    {
    private static void Main(string[] args)
    {
    //IDBHelper objDBHelper = new DBHelper();
    //objDBHelper.Query();
    Console.WriteLine("***********Reflection**************");
    string nameSpace = ConfigurationManager.AppSettings["Idiosoft.DB.Interface.IDBHelper"]; //获取配置文件
    string[] nameSpaceArray = nameSpace.Split(',');

    //Assembly assembly = Assembly.Load("Idiosoft.DB.Sqlserver");//根据反射动态的加载
    Assembly assembly = Assembly.Load(nameSpaceArray[1]);//根据反射动态的加载
    Console.WriteLine("***********GetModules**************");
    foreach (Module module in assembly.GetModules())
    {
    Console.WriteLine("名称:{0}", module.FullyQualifiedName);
    }
    Console.WriteLine("***********GetTypes**************");

    foreach (Type type in assembly.GetTypes())
    {
    Console.WriteLine("名称:{0}", type.FullName);
    }
    Console.WriteLine("***********创建对象**************");
    //Type dbHelperType = assembly.GetType("Idiosoft.DB.Sqlserver.DBHelper");//基于类的完整名称找出准确类型
    Type dbHelperType = assembly.GetType(nameSpaceArray[0]);//基于类的完整名称找出准确类型

    object oDBHelper = Activator.CreateInstance(dbHelperType);//根据类型创建对象
    try
    {
    IDBHelper objDBHelperReflecton = (IDBHelper)oDBHelper;//强制转换
    objDBHelperReflecton.Query();//完成方法的调用
    }
    catch (Exception ex)
    {
    }

    Console.ReadKey();
    }

  • 相关阅读:
    简单选择排序就是简单~~~
    快速排序的性能和名字一样优秀
    网关Ocelot功能演示完结,久等了~~~
    打个赌,用得最多的冒泡排序肯定少了个关键点
    C7 : 进程环境
    Java Native Interface Specification
    JNI简易开发
    Java Native Interface Specification
    MultilingualSimpleObject
    Java Native Interface Specification
  • 原文地址:https://www.cnblogs.com/it1042290135/p/7793057.html
Copyright © 2011-2022 走看看