Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/269.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在WPF中为MEF重新组合空目录目录_C#_Wpf_Prism_Mef - Fatal编程技术网

C# 如何在WPF中为MEF重新组合空目录目录

C# 如何在WPF中为MEF重新组合空目录目录,c#,wpf,prism,mef,C#,Wpf,Prism,Mef,我有一个包含以下步骤的应用程序: 启动应用程序并配置AggregateCatalog 将用户登录到应用程序 将DLL MEF模块下载到名为“模块”的目录中 刷新目录目录--出现问题 下载dll后,我有空目录“Modules”,我尝试加载模块,但没有成功。我调用DirectoryCatalog.Refresh()的第行出现错误 System.ComponentModel.Composition.ChangeRejectedException被删除 unhandled by user code Me

我有一个包含以下步骤的应用程序:

  • 启动应用程序并配置AggregateCatalog
  • 将用户登录到应用程序
  • 将DLL MEF模块下载到名为“模块”的目录中
  • 刷新目录目录--出现问题
  • 下载dll后,我有空目录“Modules”,我尝试加载模块,但没有成功。我调用DirectoryCatalog.Refresh()的第行出现错误

    System.ComponentModel.Composition.ChangeRejectedException被删除 unhandled by user code Message=合成保持不变。 由于以下错误,更改被拒绝:错误 作文产生了多个作文错误,有14个根本原因。 下面提供了根本原因。回顾 有关详细信息,请参阅CompositionException.Errors属性

    1) 不可重新编译的导入阻止的导出更改 'Microsoft.Practices.Prism.MefExtensions.Modularity.MefModuleInitializer..ctor (Parameter=“downloadedPartCatalogs”, ContractName=“Microsoft.Practices.Prism.MefExtensions.Modularity.DownloadedPartCatalogCollection”)' 部分地 'Microsoft.Practices.Prism.MefExtensions.Modularity.MefModuleInitializer'

    2) 不可重新编译的导入阻止的导出更改 'Microsoft.Practices.Prism.MefExtensions.Modularity.MefModuleManager.mefFileModuleTypeLoader (ContractName=“Microsoft.Practices.Prism.MefExtensions.Modularity.MefFileModuleTypeLoader”)' 部分地 'Microsoft.Practices.Prism.MefExtensions.Modularity.MefModuleManager'

    3) 不可重新编译的导入阻止的导出更改 'Microsoft.Practices.Prism.MefExtensions.Modularity.MefModuleManager..ctor (Parameter=“moduleInitializer”, ContractName=“Microsoft.Practices.Prism.Modularity.IModuleInitializer”)' 部分地 'Microsoft.Practices.Prism.MefExtensions.Modularity.MefModuleManager'

    4) 不可重新编译的导入阻止的导出更改 'Microsoft.Practices.Prism.MefExtensions.Modularity.MefModuleManager.mefFileModuleTypeLoader (ContractName=“Microsoft.Practices.Prism.MefExtensions.Modularity.MefFileModuleTypeLoader”)' 部分地 'Microsoft.Practices.Prism.MefExtensions.Modularity.MefModuleManager'

    5) 不可重新编译的导入阻止的导出更改 'Microsoft.Practices.Prism.MefExtensions.Modularity.MefModuleManager..ctor (Parameter=“moduleInitializer”, ContractName=“Microsoft.Practices.Prism.Modularity.IModuleInitializer”)' 部分地 'Microsoft.Practices.Prism.MefExtensions.Modularity.MefModuleManager'

    6) 不可重新编译的导入阻止的导出更改 'GXBilling.ViewsModels.ShellViewModel.ModuleManager (ContractName=“Microsoft.Practices.Prism.Modularity.IModuleManager”)' 在“GXBilling.ViewsModels.ShellViewModel”部分中

    7) 找到多个与约束匹配的导出 “((exportDefinition.ContractName== “Microsoft.Practices.Prism.Regions.RegionaAdapterMappings”)和 (exportDefinition.Metadata.ContainsKey(“ExportTypeIdentity”)和 “Microsoft.Practices.Prism.Regions.RegionAdapterMappings.Equals(exportDefinition.Metadata.get_项(“ExportTypeIdentity”))”)

    导致:无法设置导入 'Microsoft.Practices.Prism.MefExtensions.Regions.Behaviors.MefDelayedRegionCreationBehavior..ctor (Parameter=“regionAdapterMappings”, ContractName=“Microsoft.Practices.Prism.Regions.RegionAdapterMappings”)' 部分地 “Microsoft.Practices.Prism.MefExtensions.Regions.Behaviors.MefDelayedRegionCreationBehavior”。 要素: Microsoft.Practices.Prism.MefExtensions.Regions.Behaviors.MefDelayedRegionCreationBehavior..ctor (Parameter=“regionAdapterMappings”, ContractName=“Microsoft.Practices.Prism.Regions.RegionAdapterMappings”) -->Microsoft.Practices.Prism.MefExtensions.Regions.Behaviors.MefDelayedRegionCreationBehavior -->AssemblyCatalog(Assembly=“Microsoft.Practices.Prism.MefExtensions,Version=4.0.0.0, 文化=中性,PublicKeyToken=31bf3856ad364e35”)

    8) 不可重新编译的导入阻止的导出更改 'Microsoft.Practices.Prism.MefExtensions.Regions.MefsElectorRegionaAdapter..ctor (Parameter=“regionBehaviorFactory”, ContractName=“Microsoft.Practices.Prism.Regions.IRegionBehaviorFactory”)' 部分地 'Microsoft.Practices.Prism.MefExtensions.Regions.MefSelectorRegionAdapter'

    9) 不可重新编译的导入阻止的导出更改 'Microsoft.Practices.Prism.MefExtensions.Regions.MefItemsControlRegionAdapter (Parameter=“regionBehaviorFactory”, ContractName=“Microsoft.Practices.Prism.Regions.IRegionBehaviorFactory”)' 部分地 “Microsoft.Practices.Prism.MefExtensions.Regions.MefItemsControlRegionAdapter”

    10) 不可重新编译的导入阻止的导出更改 'Microsoft.Practices.Prism.MefExtensions.Regions.MefContentControlRegionAdapter (Parameter=“regionBehaviorFactory”, ContractName=“Microsoft.Practices.Prism.Regions.IRegionBehaviorFactory”)' 部分地 'Microsoft.Practices.Prism.MefExtensions.Regions.mefcontentControlRegionaAdapter'

    11) 找到多个与约束匹配的导出 “((exportDefinition.ContractName== “Microsoft.Practices.Prism.Regions.IRegionViewRegistry”)和 (exportDefinition.Metadata.ContainsKey(“ExportTypeIdentity”)和 “Microsoft.Practices.Prism.Regions.IRegionViewRegistry”.Equals(exportDefinition.Metadata.get_项(“ExportTypeIdentity”)))”

    导致:无法设置导入 'Microsoft.Practices.Prism.MefExtensions.Regions.Behaviors.MefautopulateregionBehavior..ctor (Parameter=“regionViewRegistry”, ContractName=“Microsoft.Practices.Prism.Regions.IRegionViewRegistry”)' 部分地 “Microsoft.Practices.Prism.MefExtensions.Regions.Behaviors.MefautopulateregionBehavior”。 要素: Microsoft.Practices.Prism.MefExtensions.Regions.Behaviors.Mefautopulateregionbeha
    [Import]
    public ShellViewModel ViewModel
    
    [Import(AllowRecomposition = false)]
    public IModuleManager ModuleManager { get; set; }
    
    [Import(typeof(IShell), AllowRecomposition = true)]
    public IShell MainShell { get; set; }
    
    [ImportingConstructor]
    public ModuleImporting(IRegionManager regionManager)
    
    [ImportMany(typeof(IFoo),AllowRecomposition=true)]
    IEnumerable<IFoo> Foos { private get; set; }