Je suis nouveau dans Visual Studio. Je crée actuellement un formulaire de connexion.
J'ai ce code.
string connectionString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
try
{
using (OdbcConnection connect = new OdbcConnection(connectionString))
{
connect.Open();
OdbcCommand cmd = new OdbcCommand("SELECT username, password FROM receptionist", connect);
OdbcDataReader reader = cmd.ExecuteReader();
if (username_login.Text == username && password_login.Text == password)
{
this.Hide();
MessageBox.Show("Invalid User", "Login Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
this.Close();
}
else
MessageBox.Show("Invalid User", "Login Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
connect.Close();
}
}
catch (OdbcException ex)
{
MessageBox.Show(ex.Message, "error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
Mais chaque fois que j'essaie de taper le nom d'utilisateur et le mot de passe, il y a une erreur appelée Système de configuration n'a pas réussi à s'initialiser . Je me demande juste quel genre de problème est-ce et comment pourrais-je le résoudre?
Veuillez aider.
Réponses:
Assurez-vous que votre fichier de configuration (web.config si web, ou app.config si windows) dans votre projet commence comme:
Notez qu'à l'intérieur de l'
configuration
élément, le premier enfant doit être l'configSections
élément.Dans la
name
propriété onsection
element, assurez-vous de remplacerYourProjectName
par le nom de votre projet réel.Il m'est arrivé de créer un service Web dans un projet de bibliothèque de classes, puis j'ai copié (écrasé) le fichier de configuration (afin d'apporter la configuration des points de terminaison) à mon application Windows et j'ai commencé à avoir le même problème. Je l'avais retiré par inadvertance
configSections
.cela a fonctionné pour moi, j'espère que cela aide
la source
configSections
élément existait mais se trouvait plus tard dans la partie app.config. Je ne peux pas m'empêcher de demander pourquoi cette erreur s'est produite. Je pensais que les éléments XML n'avaient pas besoin d'être commandés.Supprimez les anciens fichiers de configuration de c: \ Users \ username \ AppData \ Local \ appname et c: \ Users \ username \ AppData \ Roaming \ appname , puis essayez de redémarrer votre application.
la source
Parfois, l'erreur se produit car une fenêtre crée un doublon dans le
Supprimez simplement ce dossier et c'est fait. essayez-le.
la source
Si vous avez ajouté vos propres sections de configuration personnalisées à votre
App.Config
, assurez-vous d'avoir défini la section dans l'<configSections>
élément. J'ai ajouté le XML de ma configuration mais j'ai oublié de déclarer la section de configuration en haut - ce qui a provoqué pour moi l'exception "Le système de configuration n'a pas pu s'initialiser".la source
J'ai eu ce même problème avec une classe MSTest: Marlon Grech dans son article dit "l'élément doit être défini comme le premier élément dans App.config."
Assurez-vous donc que c'est le premier élément sous l'élément. J'avais mis AppSettings en premier.
la source
Je sais que cela a déjà été répondu, mais j'ai eu exactement le même problème lors de mes tests unitaires. J'arrachais mes cheveux - en ajoutant une section appSettings, puis en déclarant la section de configuration selon la réponse. Enfin découvert que j'avais déjà déclaré une section appSettings plus haut dans mon fichier de configuration. Les deux sections pointaient vers mon fichier de paramètres externes "appSettings.config" mais le premier élément appSettings utilisant le fichier d' attributs tandis que l'autre utilisait l'attribut configSource . Je sais que la question portait sur les chaînes de connexion. Effectivement, cela se produit si l'élément appSettings est l'élément connectionStrings en cours de duplication avec différents attributs.
J'espère que cela peut fournir à quelqu'un d'autre la solution avant de s'engager sur le chemin que j'ai suivi, ce qui conduit à perdre une heure ou deux. soupire oh la vie de nous les développeurs. Nous perdons plus d'heures quelques jours de débogage que nous passons à développer!
la source
appSettings
et lesapplicationSettings
deux.J'ai commencé à obtenir ce problème après avoir désinstallé les pilotes clients Oracle et il a supprimé mon C: \ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 \ machine.config !
La copie à partir d'un autre ordinateur a résolu le problème.
la source
la source
Si vous avez des paramètres de portée utilisateur, vous pouvez également avoir un fichier user.config quelque part dans le
[Userfolder]\AppData\Local\[ProjectName]
dossier.Si vous supprimez ultérieurement les paramètres de portée utilisateur, user.config ne sera pas automatiquement supprimé, et sa présence peut provoquer le même message d'erreur. La suppression du dossier a fait l'affaire pour moi.
la source
Wow, il m'a fallu une éternité pour comprendre celui-ci. Pour une raison quelconque, la modification de l'attribut
[assembly: AssemblyCompany("CompanyName")]
at aAssemblyInfo.cs
fait disparaître cette erreur. Je faisais référence à un projet qui avait une valeur différente pour l'attribut[assembly: AssemblyCompany("CompanyName")]
. Je me suis assuré que les deux projets avaient la même valeur d'attribut et cela a très bien fonctionné!la source
Même problème avec moi, j'ai résolu mon problème en supprimant verion = "v3.5" d'App.config.
Avant
Solution
Voici comment utiliser la version sur
Élément d'exécution du support MSDN
la source
Après une longue recherche, j'ai réalisé que cette exception a une exception interne qui vous indique exactement ce qui ne va pas avec votre fichier de configuration
la source
Solution facile pour les projets de bibliothèque de classes standard .Net Core WinForms / WPF / .Net
étape 1: installation
System.Configuration.ConfigurationManager
par Nuget Managerétape 2: ajouter un nouveau
App.Config
fichierétape3: obtenir la valeur
Si vous l'appelez depuis un,
Class Library
ajoutez leApp.Config
fichier à votre projet principal.la source
Il convient de noter que si vous ajoutez des éléments tels que des chaînes de connexion dans app.config, que si vous ajoutez des éléments en dehors des sections de configuration définies, il ne se plaindra pas immédiatement, mais lorsque vous essayez d'y accéder, vous pouvez alors obtenir les erreurs ci-dessus.
Réduisez toutes les sections principales et assurez-vous qu'il n'y a pas d'éléments en dehors de ceux définis. Évidemment, quand vous l'avez repéré.
la source
Dans mon cas, la seule solution était d'ajouter la référence au
System.Configuration
dans mon projet de test également.la source
C'est un peu stupide, mais pour moi, je l'ai corrigé en faisant une dernière version du contrôle de code source sur mon code. Je pense qu'il y avait un nouvel élément de configuration qui a été ajouté par quelqu'un d'autre, et j'avais besoin d'écraser mes fichiers de configuration. OP montre l'erreur que j'ai eue, qui ne me dirigeait pas vraiment dans la bonne direction.
la source
Moi aussi, j'ai été confronté au même problème, mais accidentellement j'ai écrit le sans écrire le, le précédent devrait aller à l'intérieur de ces balises. ainsi l'erreur «Configuration System Failed to Initialize» s'est produite. J'espère que cela vous aidera
la source
Dans mon cas, j'ai deux configurations dans le fichier app.config. Après avoir supprimé celui qui se cache dans les lignes de code, l'application fonctionne correctement.
Donc, pour quelqu'un qui a le même problème, vérifiez d'abord si vous avez des configurations en double.
la source
Si vous avez affaire à un Azure WebJob - j'ai dû supprimer les éléments suivants après la mise à niveau vers la dernière 4.6.1.
J'espère que cela t'aides.
la source
Dans mon cas, dans mon fichier .edmx, j'avais exécuté la commande «Mettre à jour le modèle à partir de la base de données». Cette commande a ajouté une chaîne de connexion inutile à mon fichier app.config. J'ai supprimé cette chaîne de connexion et tout s'est à nouveau bien passé.
la source
J'ai résolu le problème en utilisant le code ci-dessous
la source
Essayez d'enregistrer le fichier .config sous utf-8 si vous avez des caractères "spéciaux" dedans. C'était le problème dans mon cas d'une application console.
la source
Comme @Flash Gordon l'a mentionné dans son commentaire, vous devrez définir n'importe quelle balise personnalisée (en tant que section) dans votre fichier App.config , sous
<configSections>
. Par exemple, vous travaillez sur un projet d'automatisation de test avec SpecFlow et l'ajout d'une<specFlow>
balise, alors une version la plus simple d'App.config ressemblera à ceci:la source
Je viens d'avoir cela et c'est parce que j'avais un
<configuration>
élément imbriqué à l'intérieur d'un<configuration>
élément.la source
J'ai redémarré Visual studio et même tout le PC. J'ai nettoyé le projet, reconstruit et supprimé le fichier bin.
Rien n'a aidé jusqu'à ce que je change la configuration de x64 à x86. Cela a fonctionné sur x86 mais quand je l'ai changé, cela a aussi fonctionné!
la source
J'ai essayé toutes les solutions ci-dessus en essayant de comprendre pourquoi l'un de mes tests unitaires n'a pas réussi à récupérer la configuration à partir d'un fichier app.config qui est parfait.
J'avais 2 références au même assemblage comme ceci:
La suppression de la référence (en double) en jaune l'a corrigée pour moi.
J'espère que cela fonctionne pour quelqu'un d'autre, cela m'a rendu fou pendant un certain temps.
la source
Si vous avez une section personnalisée, vous devez le mentionner sous configSections juste en dessous de la balise de configurations.
Veuillez vérifier vos fichiers de transformation, assurez-vous de supprimer les balises inutiles. Seule la section qui va varier doit être présente dans les fichiers de transformation. ne mentionnez pas la section config dans les fichiers de transformation si vous n'en avez pas besoin. cela causerait également le problème.
si vous avez une erreur de syntaxe dans machine.config, cette erreur est également attendue.
la source