Est-il un moyen de réinitialiser un DbContext sans disposer et reinstantiating?

J'ai récemment refait une application WPF, de sorte qu'il n'est plus encapsule chaque utilisation de la DbContext dans un using clause (voir cette question). Au lieu de cela, mon application utilise le même DbContext singleton dans l'ensemble.

Cela fonctionne très bien, sauf un petit problème. J'ai une routine qui recrée la base de données à partir de zéro et insère des données par défaut. Cette routine utilise ADO.NET directement (pas le DbContext), de sorte que le DbContext est pas au courant que la base de données est maintenant complètement différente.

Est-il une méthode pour réinitialiser le DbContext sans disposer? Je voudrais éviter l'élimination, si possible, parce que ce serait briser plusieurs références à l'origine de singleton dans toute l'application.

OriginalL'auteur devuxer | 2011-04-13