我正在尝试使用WPF & Unity开发一个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
}发布于 2013-07-28 18:32:09
这可能有点牵强,但您是否使用IModuleExport接口使用ModuleExportAttibute标记模块?
[ModuleExport("TestModule", typeof(TestModule), InitializationMode = InitializationMode.OnDemand)]
public class MainMenuControlModule : IModule编辑:最后的问题不是没有要求代码从磁盘加载模块。
https://stackoverflow.com/questions/17910349
复制相似问题