在C#代码中加载.dll库时出现问题

在C#代码中加载.dll库时出现问题,c#,dll,.net-assembly,C#,Dll,.net Assembly,我发现了一些关于通过代码将.dll库直接加载到C#项目中的帖子。以下是我正在使用的当前代码: if (System.IO.File.Exists(dir + lib + ".dll")) { Assembly type = Assembly.LoadFrom(dir + lib + ".dll"); object obj1 = type.CreateInstance(_namespac

我发现了一些关于通过代码将.dll库直接加载到C#项目中的帖子。以下是我正在使用的当前代码:

            if (System.IO.File.Exists(dir + lib + ".dll"))
            {
                Assembly type = Assembly.LoadFrom(dir + lib + ".dll");
                object obj1 = type.CreateInstance(_namespace);



                assm.Add(obj1);
                return assm.Count - 1;
            }
            else
            {
                Console.WriteLine(dir + lib + ".dll: file does not exist");
                return -1;
            }
代码包含:

                Assembly type = Assembly.LoadFrom(dir + lib + ".dll");
                object obj1 = type.CreateInstance(_namespace);
假设是定位.dll文件并将其作为实例加载,然后获取类并从中创建对象。因此,我可以创建一个库,其中有一个函数可以打印hello,然后将其加载到代码中,然后通过创建类的实例来访问该函数。问题是当我执行代码时:

                object obj1 = type.CreateInstance(_namespace);
obj1为null,我知道给函数指定namspace(我仔细检查了它,结果是正确的),但不管是什么,它始终为null。我检查了库是否正在作为程序集加载,并且它是!以下是执行断点操作(将鼠标悬停在对象类型上)时程序集的详细信息:


提前感谢您的帮助,我不确定我的代码有什么问题。

什么是命名空间?它必须包含类的全名(带有名称空间),例如
System.Collections.ArrayList

,这样程序集似乎已正确加载。
\u namespace
的外观如何?对象是如何声明的?\u namespace只是一个字符串,其值为库的名称空间。库中的名称空间是:namespace ClassLibrary1和_namespace是ClassLibrary1.yep我忘了在名称空间的末尾添加类,谢谢!
    {ClassLibrary1, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null}