WPF Application fails on startup with TypeInitializationException WPF Application fails on startup with TypeInitializationException wpf wpf

WPF Application fails on startup with TypeInitializationException


Thanks @ima, your answer pointed me in the right direction. I was using an app.config file and it contained this:

<configuration>  <startup>    <supportedRuntime version="v2.0.50727" sku="Client"/>  </startup>  <configSections>    <section name="modules" type="Microsoft.Practices.Composite.Modularity.ModulesConfigurationSection, Microsoft.Practices.Composite"/>  </configSections>  <modules>    <module assemblyFile="Modules/MyNamespace.Modules.ModuleName.dll" moduleType="MyNamespace.Modules.ModuleName.ModuleClass" moduleName="Name"/>  </modules></configuration>

It seems the problem was the <startup> element because when I removed it the application ran fine. I was confused because Visual Studio 2008 added that when I checked the box to utilise the "Client Profile" available in 3.5 SP1.

After some mucking about checking and un-checking the box I ended up with a configuration file like this:

<configuration>  <configSections>    <section name="modules" type="Microsoft.Practices.Composite.Modularity.ModulesConfigurationSection, Microsoft.Practices.Composite"/>  </configSections>  <modules>    <module assemblyFile="Modules/MyNamespace.Modules.ModuleName.dll" moduleType="MyNamespace.Modules.ModuleName.ModuleClass" moduleName="Name"/>  </modules>  <startup>    <supportedRuntime version="v2.0.50727" sku="Client"/>  </startup></configuration>

Which works!

I'm not sure why the order of elements in the app.config is important - but it seems it is.


Anything wrong in the App.config file may cause the error, such as a typo of * at the end of a line, eg ...</startup> has an additional "*" at the end of the line ...</startup>*.


Do you use .config file? If so, check it for errors. Initialization errors of such sort are often triggered by invalid XML: if there are no errors in XAML, XML config is the first place to look.