zoukankan      html  css  js  c++  java
  • C# 反射(一)

    /// <summary>
    /// 创建对象实例
    /// </summary>
    /// <typeparam name="T">要创建对象的类型</typeparam>
    /// <param name="assemblyName">类型所在程序集名称</param>
    /// <param name="nameSpace">类型所在命名空间</param>
    /// <param name="className">类型名</param>
    /// <returns></returns>
    public static T CreateInstance<T>(string assemblyName, string nameSpace, string className)
    {
    try
    {
    string fullName = nameSpace + "." + className;//命名空间.类型名
    //此为第一种写法
    object ect = Assembly.Load(assemblyName).CreateInstance(fullName);//加载程序集,创建程序集里面的 命名空间.类型名 实例
    return (T)ect;//类型转换并返回
    //下面是第二种写法
    //string path = fullName + "," + assemblyName;//命名空间.类型名,程序集
    //Type o = Type.GetType(path);//加载类型
    //object obj = Activator.CreateInstance(o, true);//根据类型创建实例
    //return (T)obj;//类型转换并返回
    }
    catch
    {
    //发生异常,返回类型的默认值
    return default(T);
    }
    }

  • 相关阅读:
    4.2 手指绘图
    Linux-linux常用操作
    gdb的使用
    时钟的函数
    动态链接库
    简单算法整理
    win的使用
    c语言格式化打印
    Symfony2 学习笔记之控制器
    Symfony2 学习笔记之系统路由
  • 原文地址:https://www.cnblogs.com/qudeqiang/p/9150348.html
Copyright © 2011-2022 走看看