考虑一下代码,
Type t0 = Type.GetType("System.Drawing.dll"); Type t1 = Type.GetType("System.Drawing.Font");
这里为了找到"System.Drawing.Font"的类型,需要程序集"System.Drawing.dll".如何使用它.?
即如果我这样做,那么t0的值不会为空.
考虑我是一个dll,proj.dll,我需要找到dll中存在的类Class1的类型.
指定程序集,包括强命名程序集的版本号:
Type t = Type.GetType("System.Drawing.Font,System.Drawing,"+ " Version=2.0.0.0, Culture=neutral, "+ "PublicKeyToken=b03f5f7f11d50a3a");
当然,如果它真的只是System.Drawing.Font
(或者你在编译时知道的其他类型),请使用typeof
:
Type t = typeof(System.Drawing.Font);
如果在编译时知道同一程序集中的其他类型,则可以使用Assembly.GetType
:
Type sizeType = typeof(System.Drawing.Size); Assembly assembly = sizeType.Assembly; Type fontType = assembly.GetType("System.Drawing.Font");