Testing an Entity Framework database connection

c# database-connection entity-framework mysql testing


I have an app that connects to a MYSQL database through the entity framework. It works 100% perfectly, but I would like to add a small piece of code that will test the connection to the database upon app startup.

I had the idea of simply running a tiny command to the database and catching any exceptions, however if there is a problem (eg App.Config missing or Database server down) the app takes a huge amount of time to run this code and then throw the exception (~1 min). I imagine this is due to connection timeouts etc but I have fiddled with such properties to no avail.

Would anyone be able to assist with any ideas as to where to go?

4/27/2018 3:03:00 PM

Accepted Answer

Are you just wanting to see if the DB connection is valid. If so take a look at the

using (DatabaseContext dbContext = new DatabaseContext())


and for checking if a server machine is up, DB server or web services server , try this:

public PingReply Send( string hostNameOrAddress )


4/10/2020 1:08:28 AM

Popular Answer

The solution as @Danilo Breda pointed out is to call the DbContext.Database.Connection.Open()

It is tested with EF6.

My implementaion:

    public static bool CheckConnection()
            return false;
        return true;

Related Questions


Licensed under: CC-BY-SA with attribution
Not affiliated with Stack Overflow
Licensed under: CC-BY-SA with attribution
Not affiliated with Stack Overflow