Bonjour,
SVP pouvez-vous m'expliquer comment modifier (par Code) des données qui sont déjà stockées dans un fichier *.config ??!!!
merci d'avance.
Bonjour,
SVP pouvez-vous m'expliquer comment modifier (par Code) des données qui sont déjà stockées dans un fichier *.config ??!!!
merci d'avance.
Tu peux utiliser le bout de code suivant :
Cependant le fichier de configuration n'est à mon avis pas le meilleur outil pour avoir des paramètres dynamiques...
Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 var appConfigFile = ConfigurationManager.OpenExeConfiguration(Application.ExecutablePath); appConfigFile.AppSettings.Settings["TonString"].Value = "La valeur que tu veux enregistrer"; appConfigFile.Save();
Less Is More
Pensez à utiliser les boutons , et les balises code
Desole pour l'absence d'accents, clavier US oblige
Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.
C'est pas fait pour ça, normalement un fichier .config n'est pas supposé être modifié par le programme qui l'utilise (sauf le user.config qui contient les paramètres utilisateurs, mais pour ça on utilise habituellement la classe de Settings générée par Visual Studio)
De toutes façons le fichier de config du programme est dans le répertoire du programme, donc souvent dans Program Files, et à moins d'être administrateur on ne peut pas écrire dans ce répertoire (du moins sous Windows Vista/7/8)
Pas de questions techniques par MP ! Le forum est là pour ça...
Tutoriels : Les nouveautés de C# 6 - Accès aux données avec Dapper - Extraction de données de pages web à l'aide de HTML Agility Pack - La sérialisation XML avec .NET (Aller plus loin) - Les markup extensions en WPF
Les outils dont je parle, tomlev en a évoqué un : les Settings. Tu peux y accéder dans les Propriétés de ton projet. Il y a un onglet "Paramètres".
Tu peux choisir la portée (scope) de chaque paramètre : utilisateur ou application.
Une autre solution est de manipuler dans ton code un singleton afin de gérer les paramètres de l'application, et une classe qui permettra de gérer les paramètres utilisateurs.
Less Is More
Pensez à utiliser les boutons , et les balises code
Desole pour l'absence d'accents, clavier US oblige
Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.
j'ai travaillé avec un fichier Settings, il marche bien jusqu’à moment, mais je vois pas comment l'utiliser pour y stocker des tableaux ?!!!!! (je crois que c pas possible)
Tu peux y mettre n'importe quel type qui est sérialisable en XML a priori. Par exemple si tu veux mettre un tableau d'entiers, dans le designer de settings tu choisis "Browse..." dans liste déroulante du type, et tu tapes "System.Int32[]". Ensuite tu peux éditer le contenu comme pour n'importe quelle collection
Pas de questions techniques par MP ! Le forum est là pour ça...
Tutoriels : Les nouveautés de C# 6 - Accès aux données avec Dapper - Extraction de données de pages web à l'aide de HTML Agility Pack - La sérialisation XML avec .NET (Aller plus loin) - Les markup extensions en WPF
Dommage, je trouve pas ce "System.Int32"
est ce qu'il me faut ajouter une référence ?
merci d'avance.
Regarde ce lien : http://www.codeproject.com/Articles/...ngs-Class-in-C
[EDIT] : c'est dans la colonne "Type" qu'il faut choisir le type voulu, Int32[] par exemple.
Less Is More
Pensez à utiliser les boutons , et les balises code
Desole pour l'absence d'accents, clavier US oblige
Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.
Pas de questions techniques par MP ! Le forum est là pour ça...
Tutoriels : Les nouveautés de C# 6 - Accès aux données avec Dapper - Extraction de données de pages web à l'aide de HTML Agility Pack - La sérialisation XML avec .NET (Aller plus loin) - Les markup extensions en WPF
je l'ai déjà fait, il me répond toujours par "Ce type n'est pas défini" !!!
j'ai cherché dans toutes les biblio de "Parcourir", il n'est existe pas un "Systeme.int" :o
Bizarre, à un moment j'avais réussi à le faire, mais là ça fonctionne plus
Bon, voilà une solution qui marche, même si c'est pas très pratique :
- crée un setting de type int (accessible directement dans la liste déroulante)
- ferme les settings
- ouvre le fichier Settings.settings avec un éditeur XML, et remplace "System.Int32" par "System.Int32[]"
- referme le fichier, et rouvre les settings normalement
Tu peux maintenant ajouter des éléments au tableau via le designer de settings...
Pas de questions techniques par MP ! Le forum est là pour ça...
Tutoriels : Les nouveautés de C# 6 - Accès aux données avec Dapper - Extraction de données de pages web à l'aide de HTML Agility Pack - La sérialisation XML avec .NET (Aller plus loin) - Les markup extensions en WPF
Voilà, j'ai créé une variable (via le setting desiner) nomée "table" de type int, quand j'ai ouvert le fichier XML c'est ce que j'ai trouvé :
aucun "system.int" !!!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 <setting name="table" serializeAs="String"> <value>1</value> </setting>
NB: mon fichier Settings est inclue dans le dossier Properties !
Bonne fin de journée.
Ce que tu montres ça ressemble plutôt au fichier app.config... Le fichier qu'il faut modifier s'appelle Settings.settings, et il contient quelque chose comme ça :
Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 <Setting Name="table" Type="System.Int32" Scope="User"> <Value Profile="(Default)">0</Value> </Setting>
Pas de questions techniques par MP ! Le forum est là pour ça...
Tutoriels : Les nouveautés de C# 6 - Accès aux données avec Dapper - Extraction de données de pages web à l'aide de HTML Agility Pack - La sérialisation XML avec .NET (Aller plus loin) - Les markup extensions en WPF
Bizarre il me donne pas ça !!
je viens de recréer un autre fichier .Settings mais aucune différence !!
Bon, mon but est de sauvegarder les dernière modifications effectuées à travers une fenêtre C#(Texbox) afin de les récupérer pendant le lancement suivant de l'application.
y a t-il une autre solution ?!
Bizarre ton histoire... tu utilises quelle version de Visual Studio ?
Mais je pense que tu n'ouvres pas le bon fichier, parce que dans ce que tu montres il n'y a aucune indication sur le type du setting... or il a besoin de cette info pour générer le fichier C# associé.
Bah tu peux enregistrer un fichier texte, ou XML, ou n'importe quoi, dans le répertoire de données de l'application (AppData), et le recharger au lancement suivant...
Pas de questions techniques par MP ! Le forum est là pour ça...
Tutoriels : Les nouveautés de C# 6 - Accès aux données avec Dapper - Extraction de données de pages web à l'aide de HTML Agility Pack - La sérialisation XML avec .NET (Aller plus loin) - Les markup extensions en WPF
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager