Ik had deze fout en vond een paar oplossingen:
Als u naar uw verbindingsreeks kijkt, ziet deze er geldig uit. Ik vond deze blogpost, het probleem hier is dat ze Integrated Security gebruikten. Als u op IIS draait, heeft uw IIS-gebruiker toegang tot de database nodig.
Als u Entity Framework met transacties gebruikt, opent en sluit Entity Framework automatisch een verbinding met elke database-aanroep. Bij het gebruik van transacties probeert u dus een transactie te spreiden over meerdere verbindingen. Dit verheft zich tot MSDTC.
(Zie deze referentie voor meer informatie.)
Het veranderen van mijn code in het volgende loste het op:
using (DatabaseEntities context = new DatabaseEntities())
{
context.Connection.Open();
// the rest
}