Type.GetType返回null

时间:2013-07-28 16:31:25

标签: c# unity-container prism

我正在尝试使用WPF和&amp ;;开发PRISM应用程序。统一。现在我到了必须在ShellView中加载模块的部分。我试图通过使用Type.GetType方法来实现这一点,但在调试之后它表示null。现在我似乎无法弄清楚出了什么问题。我唯一知道的是我的ModuleType可能不是程序集限定名。有人可以帮助我吗?

 public partial class Shell : Window
{
    private IModuleManager ModuleManager;
    private IUnityContainer Container;
    private IModuleCatalog ModuleCatalog;

    public Shell(IModuleManager moduleManager, IUnityContainer container, IModuleCatalog moduleCatalog)
    {
        this.ModuleCatalog = moduleCatalog;

        if (moduleManager == null) throw new ArgumentException("Modulemanager is null");

        ModuleManager = moduleManager;
        ModuleManager.Run();


        Container = container;

        foreach (var module in ModuleCatalog.Modules)
        {
            OpenMainView(module);
        }

        InitializeComponent();
    }

    private void OpenMainView(ModuleInfo module)
    {
        Type ModuleType = Type.GetType(module.ModuleType); //this returns null
    }

1 个答案:

答案 0 :(得分:1)

这可能是一个延伸,但是您是否使用IModuleExport Interface使用ModuleExportAttibute标记了模块?

[ModuleExport("TestModule", typeof(TestModule), InitializationMode = InitializationMode.OnDemand)]
public class MainMenuControlModule : IModule

编辑:最后一个问题不是没有告诉代码从磁盘加载模块。