2010-12-10 10 views
1

la propriété de chaîne de connexion du fichier dbml est actuellement en cours de lecture à partir du fichier de paramètres d'application. dans le code de concepteur dbml il ressemble à ceci:connectionstring dans LINQ to SQL

Global.HMIS.My.MySettings.Default.NewVersionConnectionString 

si je tente de modifier la chaîne de connexion de la fenêtre des propriétés du fichier dbml, je ne peux pas changer quoi que ce soit il son tout en lecture seule. Aussi, si j'essaie de l'éditer directement dans le fichier de code, cela change à chaque fois que j'enregistre. donc je dois définir la propriété de la chaîne de connexion à lire à partir de app.config au lieu du fichier settings.settings

+0

Utilisez un autre constructeur de DataContext –

Répondre

1

Ajoutez votre propre chaîne aux paramètres de l'application et utilisez-la avec le constructeur DataContext (string), comme recommandé dans la publication précédente. Vous pouvez le régler d'abord à la chaîne de connexion générée par LINQ to SQL Assistant, ou sélectionnez une autre valeur par défaut appropriée. Ajouter une chaîne d'édition Chaîne de connexion à la boîte de dialogue Options du programme, permettant de le changer en utilisateur.

1

Votre classe de contexte de données a un constructeur qui prend une chaîne de connexion. Lisez simplement la chaîne de connexion depuis app.config et utilisez l'autre constructeur.

+0

généré il ne persistera pas lorsque vous enregistrez –

+0

@Ali, quoi? S'il vous plaît lire ma réponse à nouveau. –

+1

la chaîne de connexion qui lit à partir de web.config sera rétablie à la lecture d'un fichier de paramètres à chaque fois que vous faites glisser un objet à partir de l'explorateur de serveur. Je ne veux pas le réparer manuellement à chaque fois! –