在本地主机上运行Web应用程序时,我试图连接到Heroku数据库。该应用程序可以正常运行,无法执行任何无法ping数据库的功能。
对数据库的任何请求均返回此异常:
ObjectDisposedException:无法访问已处置的对象。 对象名称:“ System.Net.Sockets.Socket”。 System.Net.Sockets.Socket.EndConnect(IAsyncResult asyncResult)
MySqlException:连接超时已过期。 MySqlConnector.Core.ServerSession + d__71.MoveNext()
我可以使用连接字符串中的相同用户名/密码通过MYSQL CLI访问数据库。我尝试使用数据库名称heroku_xxxxxxxx和计算机上的实际名称,该名称也与Heroku应用程序的名称相同。我没有尝试更改端口或向Heroku授予权限。
public static class DBConfiguration
{
public static string ConnectionString = "server=us-cdbr-iron-east-01.cleardb.net;user id=theHerokuUserId;password=theHerokuPassword;port=8889;database=sameasdatabase/appname;";
}
连接到本地数据库后,该应用程序将按预期运行;尝试使用远程数据库时,出现上述异常。