J'ai un schéma de base de données et j'essaie de créer une bibliothèque "base" autour d'elle. J'ai plusieurs autres applications qui utilisent les mêmes tables de base et je voudrais mettre le code en commun.Résumé DataContext dans la DLL
Donc je suppose que j'ai deux questions alors. Tout d'abord, j'utilise C#/Asp.net 4.0 et Linq2Sql parce que la conception de ma base de données existe depuis un moment et que je n'ai pas eu le temps de la convertir en framework Entity.
J'ai créé un fichier .dbml avec la fonctionnalité de base qui fournit un contexte de données Linq que nous appellerons BaseContext et qui contient toutes les tables communes. J'ai alors du code supplémentaire dans les classes partielles; c'est le code que j'essaie de rendre commun. Je compile ensuite BaseContext dans une DLL. J'ai alors une application (s) qui va étendre le schéma et créer un nouveau DataContext qui dérive de BaseContext. C'est mon plan sur papier, mais 1) comment fonctionne DataContexts héritant?
Deuxièmement, j'ai des problèmes avec les chaînes de connexion entre les applications. Je n'ai jamais besoin du code dans la DLL pour s'exécuter, mais je dois en quelque sorte pouvoir définir la chaîne de connexion de l'application dérivée afin que le code commun soit utile. 2) Existe-t-il un moyen de remplacer une chaîne de connexion dans une DLL?
La DLL peut-elle toujours accéder au contenu ConfigurationManager défini par l'application à l'aide de la DLL? C'est exactement ce que je veux! Cela nécessite-t-il de créer un fichier app.config pour la DLL, puis un fichier web.config pour l'application utilisant la DLL? – Mark
Oui, la DLL accède au fichier de configuration de l'application d'hébergement. Les DLL n'ont pas app.configs; juste les processus hôtes. –
Merci. Je vais essayer cela. – Mark