黑马程序员技术交流社区

标题: 求助。。。在初学反射的时候遇到的问题 [打印本页]

作者: leayon    时间: 2013-8-29 11:29
标题: 求助。。。在初学反射的时候遇到的问题
本帖最后由 leayon 于 2013-8-29 13:16 编辑

如图,我在程序里面有创建Person这样的一个类,然后我使用Assembly类的GetType()方法,为什么这样获得的Type对象是为null?

反射.jpg (109.17 KB, 下载次数: 6)

反射.jpg

作者: 曹伟    时间: 2013-8-29 12:50

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Assembly assembly = Assembly.Load("ConsoleApplication1");
            /*
            Type[] types = assembly.GetTypes();
            foreach(var item in types)
            {
                Console.WriteLine(item.Name);
            }
             * */
            //要加命名空间
            Type type = assembly.GetType("ConsoleApplication1.Person");
            MemberInfo[] members = type.GetMembers();
            foreach(var item in members)
            {
                Console.WriteLine(item.Name);
            }
            Console.ReadLine();
        }
    }
    class Person
    {
        public string Name{get;set;}
    }
}

作者: leayon    时间: 2013-8-29 13:14
就是我 发表于 2013-8-29 12:50
namespace ConsoleApplication1
{
    class Program

啊。。。居然是这样的,多谢指教!{:soso_e183:}

作者: 瞎猫馒头米田共    时间: 2013-8-29 21:58
Assemble.Load的参数要为类的完全限定名称~




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2