Bonjour,

Je cherche comment pouvoir modifier le fichier web.config de mon site asp .net, l'objectif étant d'inserer dans le web.config une chaine de connexion que l'utilisitateur aura lui même saisie.

Voici comment je gère actuellement le fichier web.config:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
<connectionStrings configSource="connections.config"/>
Voici le fichier connections.config:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
<connectionStrings>
  <add name="NomId"
       connectionString="Initial Catalog=NameBDD;"
       providerName="System.Data.SqlClient" />
</connectionStrings>
Et voici comment je tente de modifier mon web.config:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
 
          ConnectionStringSettings settings = WebConfigurationManager.ConnectionStrings["NomId"];
 
            if (null != settings)
            {
                string connectString = settings.ConnectionString;
 
                SqlConnectionStringBuilder builder = new SqlConnectionStringBuilder(connectString);
 
                builder.DataSource = dataSource;
                builder.UserID = userName;
                builder.Password = userPassword;
 
            try
            {
                var configuration = WebConfigurationManager.OpenWebConfiguration("/connections.config");
                var section = (ConnectionStringsSection)configuration.GetSection("connectionStrings");
                section.ConnectionStrings["NomId"].ConnectionString = builderConnectionString.ToString();
                configuration.Save(ConfigurationSaveMode.Full);
            }
            catch (Exception er)
            { 
 
            }
            }
Tous ce passe bien jusqu'a la ligne configuration.Save() où alors ce message d'erreur apparait :
Impossible de créer un fichier de configuration pour l'objet Configuration demandé.
J'ai déjà essayer diverses parade mais rien n'y fait, je ne trouve pas la bonne solution.

Merci d'avance pour votre aide