Wystąpił ten błąd i znalazłem kilka rozwiązań:
Patrząc na parametry połączenia, wygląda on na prawidłowy. Znalazłem ten post na blogu, problem polega na tym, że używali Integrated Security. Jeśli korzystasz z IIS, Twój użytkownik IIS potrzebuje dostępu do bazy danych.
Jeśli używasz Entity Framework z transakcjami, Entity Framework automatycznie otwiera i zamyka połączenie z każdym wywołaniem bazy danych. Tak więc korzystając z transakcji, próbujesz rozłożyć transakcję na wiele połączeń. To awansuje do MSDTC.
(Zobacz ten odnośnik, aby uzyskać więcej informacji.)
Zmiana mojego kodu na następujący naprawiła to:
using (DatabaseEntities context = new DatabaseEntities())
{
context.Connection.Open();
// the rest
}