当我使用Unity的Prism 6模块化WPF应用程序启动时,System&System.ConfigurationErrorsException'在System.Configuration.dll中抛出。这个例外是宣布"' Prism.Modularity.ModulesConfigurationSection'来自' Prism'装配无法加载"并且它在App.config文件中调用UnityBootstrapper.Run方法时抛出。 下面是例外的屏幕截图(我有MSVS 2015 russified)
以下是我的应用程序的Bootstrapper类:
class Bootstrapper : UnityBootstrapper
{
protected override DependencyObject CreateShell()
{
return Container.Resolve<MainWindow>();
}
protected override void InitializeShell()
{
Application.Current.MainWindow.Show();
}
protected override IModuleCatalog CreateModuleCatalog()
{
return new ConfigurationModuleCatalog();
}
}
我在解决方案主项目的App.config文件中注册所有模块。请见下文:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="modules" type="Prism.Modularity.ModulesConfigurationSection, Prism"/>
</configSections>
<modules>
<module assemblyFile="Authorization.dll" moduleType="Authorization.AuthorizationModule, Authorization, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" moduleName="AuthorizationModule" startupLoaded="true" />
<module assemblyFile="Calibration.dll" moduleType="Calibration.CalibrationModule, Calibration, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" moduleName="CalibrationModule" startupLoaded="true" />
</modules>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
</startup>
</configuration>
主要项目是使用Prism Template Pack作为Prism Unity App创建的,每个模块都是使用Prism Template Pack作为Prism模块创建的。当我的应用程序启动然后在短时间(大约1秒)时,将显示应用程序主窗口,并在抛出上述异常之后。在我的应用程序中,我应该更正哪些消除错误?请帮忙。
答案 0 :(得分:1)
我在一个项目中有同样的错误。程序尝试访问settings.settings时,抛出System.Configuration.ConfigurationErrorsException。
我已经解决了这个问题,这要归功于StepUp的回答。 即使在另一个项目上发生错误,我也只能在解决方案的启动项目上执行此操作。
答案 1 :(得分:0)
我遇到的原因之一是App.config
文件的构建操作未设置为&#34;资源&#34;。尝试将App.config
个文件&#39; Build Action
设置为&#34;资源&#34; 。 (右键单击App.config
文件并查看属性,请参阅Build Section
)。