2017-04-06 2 views
0

J'ai une application web mvc .NET écrite en C# et j'ai un fichier web.config associé pour les valeurs de configuration spécifiques au web. J'ai également une application de service Windows qui sera exécutée sur le serveur en arrière-plan auquel App.config est associé. J'ai lié le fichier dans l'application Web et peut voir le fichier avec des valeurs mises à jour. Mais je suis incapable d'utiliser ces valeurs dans mon contrôleur pour les afficher à l'interface utilisateur. Est-il possible d'appeler les valeurs app.config à utiliser dans le contrôleur et les vues de l'application Web? À l'heure actuelle, il semble qu'ils arrivent à zéro parce qu'ils ne sont pas dans le web.config.Comment extraire les valeurs d'un App.config lié dans une application Web lorsque Web.config existe?

Toute aide est appréciée.

+0

Pouvez-vous expliquer comment avez-vous 'lié' les deux fichiers? L'utilisation à la fois de app.config et de web.config dans une application Web ne semble pas bonne à partir du design prespecive. – komsky

+0

J'ai lié le fichier par un clic droit sur le nom du projet, Ajouter un fichier existant, pointé sur le fichier et quand j'ai cliqué sur Ajouter, j'ai cliqué sur le menu déroulant et cliqué sur Ajouter comme lien –

+0

Quelles valeurs essayez-vous de tirer? Juste appSettings, ou est-ce qu'il y a une autre configuration? – Colin

Répondre

0

Tant que les autorisations sont élaborées, vous devriez être en mesure d'ouvrir le fichier de configuration partagé ainsi:

var map = new ExeConfigurationFileMap(); 
//TODO: resolve this path in whatever way makes sense for your situation. 
map.ExeConfigFilename = @"C:\MyConfig.config"; 
var config = ConfigurationManager.OpenMappedExeConfiguration(map, ConfigurationUserLevel.None); 
//do something with config, e.g. config.AppSettings.Settings["Blah"]; 

Sinon, vous pouvez faire quelque chose comme mettre des paramètres partagés dans machine.config, mais il est généralement sage ne pas jouer avec ce fichier.

+0

@MatthewCzajka Tweaked pour charger la configuration via le chemin du fichier. – Colin