J'ai une application qui contient un assemblage de référentiel. Lorsque l'application est initialement installée, le référentiel est très simple: un magasin de fichiers JSON local. Mais je veux donner à mes utilisateurs finaux la possibilité d'utiliser un magasin de référentiel différent (SQL, Oracle, etc.).Méthode recommandée pour remplacer l'assemblage du référentiel d'une application
Serait-ce aussi simple que de remplacer la DLL du référentiel d'origine dans le répertoire de l'application par la nouvelle DLL du référentiel? Si oui, l'utilisateur copierait-il simplement la nouvelle DLL du référentiel dans le répertoire de l'application, en écrasant la DLL d'origine? Existe-t-il une meilleure façon de le faire?
Notez que j'ai également un autre assembly dans l'application qui contient toutes les interfaces utilisées par l'application (est-ce une bonne pratique?). L'application vérifie que l'assembly de référentiel implémente toutes les interfaces requises. Je crois que je ne veux pas d'architecture/framework de plug-in. Je ne veux pas la possibilité d'en choisir une parmi un ensemble d'assemblages de référentiels chargés. Mais je vais écouter tout argument favorisant une stratégie de plug-in pour mon application.
Merci, avat. Je suppose que l'utilisateur fait partie d'une organisation plus grande et que le type de référentiel (SQL, Oracle, etc.) est dicté par l'organisation. Ainsi, la DLL du référentiel ne sera sélectionnée qu'une seule fois, probablement lors de l'installation du programme ou peu après, pas à chaque fois que l'utilisateur utilise le programme. La situation est donc similaire à votre premier scénario. – blueshift