Enregistrer les paramètres d'un fichier de configuration

Enregistrer les paramètres d'un fichier de configuration - C#/.NET managed - Programmation

Marsh Posté le 13-12-2007 à 14:08:27    

Salut à tous,
 
j'ai un souci concernant les fichiers de configuration.
 
J'ai le fichier de config suivant:
 

Code :
  1. <configuration>
  2.   <configSections>
  3.     <section name="SQLSection" type="GilInterimStatsViewer.SQLSectionHandler, GilInterimStatsViewer" />
  4.     <section name="ExportImageSection" type="GilInterimStatsViewer.ExportImageSectionHandler, GilInterimStatsViewer" />
  5.   </configSections>
  6.   <SQLSection type="GilInterimStatsViewer.SQLSection, GilInterimStatsViewer">
  7.     <Server>xxx</Server>
  8.     <DBName>xxx</DBName>
  9.   </SQLSection>
  10.   <ExportImageSection type="GilInterimStatsViewer.ExportImageSection, GilInterimStatsViewer">
  11.     <ImageFormat>image/png</ImageFormat>
  12.     <ImageCompression>100</ImageCompression>
  13.     <ImageWidth>1280</ImageWidth>
  14.   </ExportImageSection>
  15. </configuration>


J'ai créé les classes qui vont bien pour la lecture des paramètres des nouvelles sections:
 

Code :
  1. using System;
  2. using System.Configuration;
  3. using System.Xml;
  4. using System.Xml.Serialization;
  5. namespace GilInterimStatsViewer
  6. {
  7.     public class SQLSection
  8.     {
  9.         private string ServerName_;
  10.         private string DBName_;
  11.         public string Server
  12.         {
  13.             get { return ServerName_; }
  14.             set { ServerName_ = value; }
  15.         }
  16.         public string DBName
  17.         {
  18.             get { return DBName_; }
  19.             set { DBName_ = value; }
  20.         }
  21.     }
  22.     class SQLSectionHandler : IConfigurationSectionHandler
  23.     {
  24.         public object Create(object parent, object configContext, XmlNode section)
  25.         {
  26.             XmlSerializer xs = new XmlSerializer(typeof(SQLSection));
  27.             XmlNodeReader xnr = new XmlNodeReader(section);
  28.             return xs.Deserialize(xnr);
  29.         }
  30.     }
  31. }


J'arrive à lire correctement les valeurs:
 

Code :
  1. SQLSection sqlSect = (SQLSection)ConfigurationManager.GetSection("SQLSection" );
  2. string server = sqlSect.Server;
  3. string db = sqlSect.DBName;


Maintenant, problème, j'arrive à enregistrer de nouvelles valeurs pour ces sections personalisées...
 
Comment je dois faire?
 
J'ai essayé avec ça:
 

Code :
  1. Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);


Mais je m'en sors pas pour le moment...
 
Qui peut me filer un petit coup de main?
 
Merci d'avance
 
Mike

Reply

Marsh Posté le 13-12-2007 à 14:08:27   

Reply

Marsh Posté le 17-12-2007 à 11:47:16    

Ben heu... J'ai du rater quelque chose...
config.Save(); ?


---------------
H. - 48h en fiat et j'ai déjà perdu la maitrise de mon argent
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed