Partage via


Gérer les paramètres d’application (.NET)

Les paramètres d’application vous permettent de stocker dynamiquement les informations d’application. Avec les paramètres d’application, vous pouvez utiliser un ordinateur client pour stocker des informations qui ne doivent pas être incluses dans le code d’application au moment de l’exécution. Les paramètres d’application peuvent inclure des chaînes de connexion, des préférences utilisateur, etc.

Remarque

Les paramètres d’application remplacent les propriétés dynamiques utilisées dans les versions antérieures de Visual Studio.

Chaque paramètre d’application doit avoir un nom unique. Le nom peut être n’importe quelle combinaison de lettres, de chiffres ou de trait de soulignement. Le nom ne peut pas commencer par un nombre et il ne peut pas avoir d’espaces. Le nom est modifié par le biais de la propriété Name.

Les paramètres d’application peuvent être stockés en tant que type de données sérialisé en XML ou dotés d’un TypeConverter qui implémente ToString/FromString. Les types les plus courants sont String, Integeret Boolean. Vous pouvez également stocker des valeurs en tant que Color, Objectou sous forme de chaîne de connexion.

Les paramètres d’application contiennent également une valeur. La valeur est définie avec la propriété valeur et doit correspondre au type de données du paramètre.

En outre, les paramètres d’application peuvent être liés à une propriété d’un formulaire ou d’un contrôle au moment du design.

Il existe deux types de paramètres d’application, en fonction de l’étendue :

  • Les paramètres étendus à l’application peuvent être utilisés pour des informations telles que l’URL d'un service web ou une chaîne de connexion à une base de données. Ces valeurs sont associées à l’application. Par conséquent, les utilisateurs ne peuvent pas les modifier au moment de l’exécution.

  • paramètres définis par l’utilisateur peuvent être utilisés pour des informations telles que la persistance de la dernière position d’un formulaire ou d’une préférence de police. Les utilisateurs peuvent modifier ces valeurs au moment de l’exécution.

Vous pouvez modifier le type d’un paramètre à l’aide de la propriété Scope.

Le système de projet stocke les paramètres d’application dans deux fichiers XML :

  • Fichier app.config, créé au moment du design lorsque vous créez le premier paramètre d’application

  • Fichier user.config, qui est créé au moment de l’exécution lorsque l’utilisateur qui exécute l’application modifie la valeur de n’importe quel paramètre utilisateur

Les modifications apportées aux paramètres utilisateur ne sont pas écrites sur le disque, sauf si l’application appelle spécifiquement une méthode pour le faire.

Créer des paramètres d’application au moment du design

Au moment du design, vous pouvez créer des paramètres d’application de deux façons :

  • Utilisez la page Paramètres du Concepteur de projet.

  • Utilisez la fenêtre Propriétés pour un formulaire ou un contrôle, ce qui vous permet de lier un paramètre à une propriété.

Lorsque vous créez un paramètre d’étendue d’application (par exemple, une chaîne de connexion de base de données ou une référence aux ressources du serveur), Visual Studio l’enregistre dans le fichier app.config avec la balise <applicationSettings>. Les chaînes de connexion sont enregistrées sous la balise <connectionStrings>.

Lorsque vous créez un paramètre d’étendue utilisateur (par exemple, police par défaut, page d’accueil ou taille de fenêtre), Visual Studio l’enregistre dans app.config fichier avec la balise <userSettings>.

Important

Lorsque vous stockez des chaînes de connexion dans app.config, vous devez prendre des précautions pour éviter de révéler des informations sensibles, telles que des mots de passe ou des chemins de serveur, dans la chaîne de connexion.

Si vous prenez des informations de chaîne de connexion à partir d’une source externe, par exemple un utilisateur qui fournit son ID d’utilisateur et son mot de passe, vérifiez que les valeurs que vous utilisez pour construire votre chaîne de connexion ne contiennent pas de paramètres de chaîne de connexion supplémentaires qui modifient le comportement de votre connexion.

Envisagez d’utiliser la fonctionnalité Configuration protégée pour chiffrer les informations sensibles dans le fichier de configuration. Pour plus d’informations, consultez Protéger les informations de connexion.

Note

Étant donné qu’il n’existe pas de modèle de fichier de configuration pour les bibliothèques de classes, les paramètres d’application ne s’appliquent pas aux projets bibliothèque de classes. L'exception est un projet de DLL Visual Studio Tools for Office Runtime, qui peut avoir un fichier de configuration.

Utiliser des fichiers de paramètres personnalisés

Vous pouvez ajouter des fichiers de paramètres personnalisés à votre projet pour une gestion pratique des groupes de paramètres. Les paramètres contenus dans un fichier unique sont chargés et enregistrés en tant qu’unité. Le stockage des paramètres dans des fichiers distincts pour les groupes fréquemment utilisés et rarement utilisés peut gagner du temps dans le chargement et l’enregistrement des paramètres.

Par exemple, vous pouvez ajouter un fichier SpecialSettings.settings à votre projet. Bien que votre classe SpecialSettings ne soit pas exposée dans l’espace de noms My, View Code peut lire le fichier de paramètres personnalisés contenant Partial Class SpecialSettings.

Le Concepteur de paramètres recherche d’abord le fichier Settings.settings créé par le système de projet. Ce fichier Settings.settings est le fichier par défaut que le Concepteur de projets affiche sous l’onglet Paramètres . Le fichier Settings.settings se trouve dans le dossier Mon projet pour les projets Visual Basic et dans le dossier Propriétés pour les projets Visual C#. Le concepteur de projets recherche ensuite d’autres fichiers de paramètres dans le dossier racine du projet. Par conséquent, vous devez y placer votre fichier de paramètres personnalisés. Si vous ajoutez un fichier .settings ailleurs dans votre projet, le concepteur de projets ne peut pas le localiser.

Accéder ou modifier les paramètres d’application au moment de l’exécution dans Visual Basic

Dans les projets Visual Basic, vous pouvez accéder aux paramètres d’application au moment de l’exécution à l’aide de l’objet My.Settings. Dans la page paramètres de , sélectionnez le bouton Afficher le code pour afficher le fichier Settings.vb. Settings.vb définit la classe Settings, qui vous permet de gérer ces événements sur la classe de paramètres :

La classe Settings dans Settings.vb est une classe partielle qui affiche uniquement le code appartenant à l’utilisateur, et non la classe générée entière. Pour plus d’informations sur l’accès aux paramètres d’application à l’aide de l’objet My.Settings, consultez Paramètres d’application Access (.NET Framework).

Les valeurs des paramètres d’étendue utilisateur que l’utilisateur change au moment de l’exécution, par exemple, la position d’un formulaire, sont stockées dans un fichier user.config. Les valeurs par défaut sont toujours enregistrées dans app.config.

Si des paramètres définis par l’utilisateur sont modifiés lors de l’exécution, par exemple lors du test de l’application et que vous souhaitez réinitialiser ces paramètres sur leurs valeurs par défaut, sélectionnez le bouton Synchroniser.

Nous vous recommandons d’utiliser l’objet My.Settings et le fichier .settings par défaut pour accéder aux paramètres. Vous pouvez utiliser le concepteur de paramètres pour affecter des propriétés aux paramètres, et également enregistrer automatiquement les paramètres utilisateur avant l’arrêt de l’application. Toutefois, votre application Visual Basic peut accéder directement aux paramètres. Dans ce cas, vous devez accéder à la classe MySettings et utiliser un fichier .settings personnalisé à la racine du projet. Vous devez enregistrer les paramètres utilisateur avant de mettre fin à l’application, comme vous le feriez pour une application C#, comme décrit dans la section suivante.

Accéder ou modifier les paramètres d’application au moment de l’exécution en C#

Dans les langages autres que Visual Basic, comme C#, vous devez accéder directement à la classe Settings, comme illustré dans l’exemple Visual C# suivant.

Properties.Settings.Default.FirstUserSetting = "abc";

Vous devez appeler explicitement la méthode Save de cette classe wrapper pour conserver les paramètres utilisateur. Vous le faites généralement dans le gestionnaire d’événements Closing du formulaire principal. L’exemple C# suivant montre un appel à la méthode Save.

Properties.Settings.Default.Save();

Pour obtenir des informations générales sur l’accès aux paramètres d’application via la classe Settings, consultez vue d’ensemble des paramètres d’application (.NET Framework).

Migration d’applications de .NET Framework vers .NET

.NET Framework utilise le fichier app.config pour charger les paramètres de votre application, tels que les chaînes de connexion et la configuration du fournisseur de logs. Le fichier .NET moderne utilise le fichier appsettings.json pour les paramètres de l’application. Pour en savoir plus sur la conversion de fichiers app.config en appsettings.json, consultez Moderniser après la mise à niveau vers .NET à partir de .NET Framework.