首页 > 解决方案 > 无法从程序集中加载类

问题描述

我有一个dll包含以下的文件。

public class UnityContainerConfig : IContainer
{
    private IUnityContainer _unityContainer;
    public UnityContainerConfig()
    {
        _unityContainer = new UnityContainer();
    }

    public void Register(HttpConfiguration config)
    {

    }
}

现在我想从另一个项目的程序集中加载这个类。

AssemblyName assemblyName = AssemblyName.GetAssemblyName(path);
Assembly iocConfigurationAssembly = Assembly.Load(assemblyName);
Type configFile = iocConfigurationAssembly.GetType("UnityContainerConfig");

程序集已正确加载,null但当我尝试使用时收到了值GetType

标签: c#classreflection.net-assembly

解决方案


您必须使用全名,包括命名空间。

来自Assembly.GetType Method (String)的 msdn 条目:

name 参数包括命名空间,但不包括程序集。


推荐阅读