Bien le bonjour à tous
Cela fait quelques jours maintenant que je reste bloqué sur un détail et mon ami Google ne m'a pas aidé à trouver la solution.
Alors je m'adresse à vous, en espérant qu'un brillant esprit viendra éclairer ma lanterne
Bien, je développe une application utilisant MVC 3 + Entity framework 4.1.
J'arrive à récupérer ce dont j'ai besoin dans la base de données, la n'est pas le problème.
Par contre, je dois accéder à différentes bases situées sur différents serveurs qui ne seront connus que lors du déroulement du programme, et là je bloque...
Je m'explique:
( Ce qui suis est juste un exemple pour vous montrer à peu prés comment est l'environnement de mon coté )
J'ai, par exemple, une classe produit avec les attributs suivants:
Je passe sur le mapping et autres, ce qui donne que je récupère les données à partir de ma base de données principale.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 public string IdProduit { get;set;} public string NomProduit { get; set;} public string Serveur { get;set;} public string DataBase { get; set;}
J'aurai par exemple ceci comme données :
Admettons ensuite que les infos de ce/ces produits sont stockées sur un serveur et base différent. ( que je connais grâce aux champs Serveur et Database )
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 IdProduit = "4587", NomProduit="Cuisine", Serveur ="NSFS45", DataBase="ProdCuisine" IdProduit = "5712", NomProduit="Salle de Bain", Serveur ="NSFS54", DataBase="ProdSDB" etc ...
J'aimerai récupérer les informations qui y sont stockés.
Mon problème ? Comment j'y accède ?
Sachant que les noms du serveur et de la base ne seront connus que durant l’exécution de mon programme, je ne peux pas écrire à l'avance ma connectionString dans le Web.config.
Par exemple, j'ai celle ci pour ma classe Produit
Voila, j’espère avoir été assez clair, si besoin je peux ré-expliquer .
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 <connectionStrings> <add name="ProduitDbContext" connectionString="Data Source=NSFS01;Initial Catalog=Produit; User Id=SuperUsr;Password=SuperPwd;" providerName="System.Data.SqlClient" /> </connectionStrings>
J'ai vu que il y avait moyen de créer la connectionString en utilisant EntityConnectionStringBuilder mais dans mon cas cela ne fonctionne pas ( je ne passe pas par EDMX )
Donc si une âme charitable passe dans le coin, je lui en remercie d'avance
.:AO:.
Partager