2017-03-07 2 views
0

J'écris une application Winforms et je reçois actuellement la chaîne de connexion de l'App. Le code dans le fichier de configuration estComment puis-je obtenir une chaîne de connexion à partir d'une application déployée?

<connectionStrings> 
    <add name="lockitup_Connect" connectionString="Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\Development\C-Sharp\LockItUp\LockItUp.mdf;Integrated Security=True" 
    providerName="System.Data.SqlClient" /> 
</connectionStrings> 

La ligne que je utilise pour accéder à la chaîne de connexion est:

connStr = ConfigurationManager.ConnectionStrings["lockitup_Connect"].ToString(); 

Mais parce que je suis nouveau à C# Je pense que cela est codé en dur dans la programme. Je cherche à déployer le programme à d'autres utilisateurs qui vont évidemment changer la chaîne de connexion.

Ai-je raison de penser cela? Si oui, comment puis-je le changer afin de pouvoir construire une chaîne de connexion précise à chaque fois? Lorsque vous déployez, vous devez écrire la chaîne de connexion appropriée au app.config qui est l'endroit où vous tirez cette valeur à partir de

Répondre

0

Le nom de la chaîne de connexion (lockitup_Connect dans votre exemple) est corrigé et vous le récupérez comme vous l'avez écrit. Le seul changement que je voudrais faire est d'écrire

ConfigurationManager.ConnectionStrings["lockitup_Connect"].ConnectionString; 

au lieu de

ConfigurationManager.ConnectionStrings["lockitup_Connect"].ToString(); 

En ce qui concerne la façon dont vous écrivez au app.config au moment du déploiement, qui dépend de facteurs tels que ce que vous utilisez pour empaqueter et déployer votre application et comment déterminez-vous les variables de chaîne de connexion au moment du déploiement.