Bonjour,

J'ai une application console avec un fichier de config contenant un paramètre d'application "LastLog".
Ce paramètre contient la date de dernier lancement de l'application.

Dans mon code, je tente de mettre à jour ce paramètre :
Code csharp : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
                DateTime now = DateTime.Now;
 
                Stopwatch stopwatch = new Stopwatch();
                stopwatch.Start();
                Console.WriteLine("Début à {0}", DateTime.Now.ToString());
 
                // Mon traitement qui va bien
                FaitDesTrucs(Properties.Settings.Default.LastLog, now);
 
                Properties.Settings.Default["LastLog"] = now;
                Properties.Settings.Default.Save();
 
                stopwatch.Stop();
                Console.WriteLine("Fin à {0}", DateTime.Now.ToString());
                Console.WriteLine("Durée {0}", stopwatch.Elapsed.ToString());

Seulement mon fichier app.config ne se met pas à jour.
Et lorsque je relance le programme, "Properties.Settings.Default.LastLog" a systématiquement toujours la même valeur initiale.

Je n'ai aucune erreur.

Voici le contenu de mon fichier de config :
Code xml : 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
 
<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <configSections>
        <sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
            <section name="Stations2CSV.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
        </sectionGroup>
    </configSections>
    <startup> 
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7"/>
    </startup>
    <applicationSettings>
        <Stations2CSV.Properties.Settings>
            <setting name="LastLog" serializeAs="String">
                <value>1900-01-01</value>
            </setting>
        </Stations2CSV.Properties.Settings>
    </applicationSettings>
</configuration>

Note : Si je transforme mon paramètre en paramètre "utilisateur", alors ça marche.

Mais moi je veux que ça reste un paramètre d'application : sa valeur doit bien être la même quel que soit l'utilisateur qui lance le programme...