Entity Framework à plusieurs bases de données (même schéma) au moment de l'exécution?

asp.net asp.net-mvc entity-framework

Question

Tout d’abord, laissez-moi vous dire que je suis très nouveau chez EF. Cela dit, voici mon dilemme:

Une application ASP.NET sera migrée vers ASP.NET MVC. Je voudrais utiliser EF pour cela. Il existe une base de données principale qui stocke les "informations client". En dehors de cela, chaque "client" a sa propre base de données. Ce sont les contraintes que nous avons.

Actuellement, les informations client dans la base de données principale me permettent de créer une chaîne de connexion par client et d'effectuer des appels SQL individuels.

Comment pourrais-je accomplir la même chose dans Entity Framework? Chaque base de données aura le même schéma. Existe-t-il un moyen de changer par programme la chaîne de connexion? Ces bases de données sont actuellement sur le même serveur, mais ce n'est pas une obligation et il peut s'agir d'un serveur complètement différent.

Des idées?

Plusieurs chaînes de connexion dans le fichier Web.config constitueraient un dernier recours. Même à ce moment-là, je ne sais pas exactement comment régler ce problème.

Merci d'avance.

Réponse populaire

Si vous travaillez avec EntityConnection dans le constructeur de votre objet Entités, vous pouvez changer la base de données assez facilement.

EntityConnection con = new EntityConnection(connString);
con.ChangeDatabase(dbName);
using (Entities context = new Entities(con))
{
    // Some code here
}


Related

Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow