2017-09-04 4 views
0

SituationRestaurer les paramètres par défaut des paramètres

Je crée un projet WPF où je veux stocker des données dans les fichiers de configuration. Comme les éléments de menu, les éléments d'arborescence et d'autres données. Les moyens que je pourrais mettre en œuvre ce fut en utilisant:

  1. fichiers XML
  2. Ini Files
  3. Integrated Settings
  4. Bases de données

Quel est le problème

J'ai choisi le ini approche de fichier avec ce library.

Mais si un utilisateur supprime un fichier de configuration je devrais avoir une sauvegarde par défaut de mes paramètres, donc mon programme peut fonctionner sans aucun problème. Les options pour restaurer les paramètres par défaut qui sont venus me voir où:

  1. Obtenir les paramètres par défaut du serveur

  2. Création d'une classe qui stocke les paramètres par défaut, quand un fichier est supprimé cette classe peut le restaurer.

    • Je pense que c'est une solution sale parce que ces classes sont pour la plupart inutilisées mais sont incluses dans le projet. Et si je suis l'approche SOLID et DRY, je finirai par + - 7 classes supplémentaires (inutilisées).

    • En faisant cela, je vais aussi ruiner l'idée d'obtenir les paramètres de mon code.

  3. Utilisation des paramètres intégrés du studio visuel qui a cette construction déjà en

    • Je ne pense pas que cela est destiné à stocker de grandes quantités de données, comme éléments de l'arborescence, les éléments de menu.

Question

Comment dois-je restaurer mes données par défaut (en recréant le fichier de configuration Whit les paramètres par défaut) lorsqu'un utilisateur supprime le fichier de configuration? Quelle approche devrais-je prendre, ou y en a-t-il qui me manque?

+0

Votre question est trop large car vous ne spécifiez aucun critère pour la décision d'une implémentation particulière. – dymanoid

+0

utiliser l'événement filewatcher pour supprimer –

+0

@dymanoid J'ai mis à jour ma question J'espère que cela a plus de sens –

Répondre

1

Vous pouvez inclure les paramètres de secours par défaut dans un fichier que vous compilez dans l'assembly en tant que ressource.

L'utilisateur ne sera pas en mesure de supprimer celui-ci comme ils peuvent supprimer un fichier dans le répertoire de sortie de l'exécutable.