当前位置:  开发笔记 > 编程语言 > 正文

GetType,托管CodeGen中的C#疑问

如何解决《GetType,托管CodeGen中的C#疑问》经验,为你挑选了1个好方法。

考虑一下代码,

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的类型.



1> Jon Skeet..:

指定程序集,包括强命名程序集的版本号:

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");

推荐阅读
ar_wen2402851455
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有