ConfigurationManager.GetSection Donne une Erreur “impossible de charger le type de...de l'assemblée...”

Mon app.config fichier est comme suit:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <configSections>
        <section name="ProcessConfiguration" type="Configuration.ProcessConfigurationSection, Configuration" />
    </configSections>
    <ProcessConfiguration>
        <processes>
            <process name="Process1" />
        </processes>
    </ProcessConfiguration>
</configuration>

J'ai le texte suivant (séparée) classes pour obtenir la configuration:

namespace Configuration
{
using System.Configuration;
public class ProcessesConfigurationSection : ConfigurationSection
{
[ConfigurationProperty("processes", IsDefaultCollection = false)]
[ConfigurationCollection(typeof(ProcessCollection))]
public ProcessCollection Processes
{
get
{
return (ProcessCollection)base["processes"];
}
}
}
}
namespace Configuration
{
using System.Configuration;
public class ProcessCollection : ConfigurationElementCollection
{
public ProcessConfig this[int index]
{
get
{
return (ProcessConfig)BaseGet(index);
}
set
{
BaseAdd(index, value);
}
}
protected override object GetElementKey(ConfigurationElement element)
{
return ((ProcessConfig)element).Name;
}
protected override ConfigurationElement CreateNewElement()
{
return new ProcessConfig();
}
}
}
namespace Configuration
{
using System.Configuration;
public class ProcessConfig : ConfigurationElement
{
[ConfigurationProperty("name", IsRequired = true, IsKey = true)]
public string Name 
{
get
{
return (string)this["name"];
}
set
{
this["name"] = value;
}
}
}
}

Cependant lorsque je tape cette ligne de code:

var processConfigurationSection = ConfigurationManager.GetSection("ProcessConfiguration") as ProcessesConfigurationSection;

Je reçois le message d'erreur qui dit:

Une erreur s'est produite de la création du gestionnaire de section de configuration pour
ProcessConfiguration: impossible de charger le type
De Configuration.ProcessConfigurationSection " de l'assemblée
'Configuration'.

Je suis complètement perplexe, si quelqu'un peut m'aider, j'apprécierais vraiment.

  • Vous aurez envie de débogage à l'aide de la Fusion de la visionneuse du journal. assurez-vous de vous lancer en tant qu'admin, tourner sur le journal, et de le redémarrer avant de tenter de le déboguer. Vous verrez où le CLR est à la recherche de l'assemblée, et quelle version, et à partir de là, de déterminer pourquoi il n'est pas trouvé, si c'est la question.
  • quel est le nom de la DLL que vous construisez?
  • Est votre type ProcessesConfigurationSection défini dans l'entrée de l'assemblée?
  • Je viens de l'avoir dans une application console tout à l'heure, nommé "Configuration". Andrii, où dois-je regarder pour voir si le type est défini dans l'entrée de l'assemblée? Merci.
InformationsquelleAutor RichardB | 2013-09-30