zoukankan      html  css  js  c++  java
  • Type.GetType(string.contains(','))

    例如

     Type type = Type.GetType("ACalCoreServiceLib.BaseService,ACalCoreServiceLib");

    里面的ACalCoreServiceLib.BaseService,ACalCoreServiceLib是完全限定名,逗号后面的命名空间可写可不写

    引用:http://www.cnblogs.com/olartan/archive/2011/11/30/2268809.html

    关于typeName的说明如下:

    1)字符串的首尾不允许有空格,逗号前不允许有空格(笔者在项目中应该在逗号前多余了一个空格导致抛出无法找到类型的异常)

    2)完全限定名可以包含逗号后面的namespace,当然也可不包含

    关于跨进程的反射同样有两点要注意:

    1)typeof是支持强类型的,如:var t = typeof(FF.Persistence.Driver.SQLite) 前提是项目必须引用FF.Persistence程序集

    2)使用Type.GetType来进行反射,要明白Type.GetType是非强类型,如果参数typeName表示的目标类型不在当前程序集中,那么会返回null。解决办法是:

    var asmb = Assembly.LoadFrom("FF.Persistence.dll") ;
    var supType = asmb.GetType("FF.Persistence.Driver.SQLite") ;

    以上都是些小细节,如果留心会少走很多弯路。

  • 相关阅读:
    51nod1381 硬币游戏
    51nod1381 硬币游戏
    51nod1384 全排列
    LOJ P10130 点的距离 题解
    POJ P1985 Cow Marathon 题解
    求树的直径(两种方法)
    洛谷 P3518 [POI2011] SEJ-Strongbox 题解
    洛谷 UVA12101 Prime Path 题解
    POJ P2251 Dungeon Master 题解
    POJ P3009 Curling 2.0 题解
  • 原文地址:https://www.cnblogs.com/swobble/p/7760001.html
Copyright © 2011-2022 走看看