J'ai eu cette erreur et j'ai trouvé quelques solutions :
En regardant votre chaîne de connexion, elle semble valide. J'ai trouvé ce billet de blog, le problème ici est qu'ils utilisaient la sécurité intégrée. Si vous utilisez IIS, votre utilisateur IIS a besoin d'accéder à la base de données.
Si vous utilisez Entity Framework avec Transactions, Entity Framework ouvre et ferme automatiquement une connexion à chaque appel de base de données. Ainsi, lorsque vous utilisez des transactions, vous essayez de répartir une transaction sur plusieurs connexions. Cela élève à MSDTC.
(Voir cette référence pour plus d'informations.)
Changer mon code pour ce qui suit l'a corrigé :
using (DatabaseEntities context = new DatabaseEntities())
{
context.Connection.Open();
// the rest
}