C# 应用程序 - 无法连接到在线数据库

C# Application - Cannot connect to on-line database

我的团队已经为一个项目开发了桌面应用程序(使用 c#)和 Web 应用程序,但是我们无法将桌面应用程序连接到 Web 托管的 mysql 数据库。 Web 应用程序可以正常连接并执行所有必需的操作。

我们计划将应用程序推送到多台机器上,保证从桌面应用程序到数据库的连接的最佳方法是什么?

谁也可以推荐一个好的主机,允许这个功能?因为这可能是问题所在。

对于含糊的问题深表歉意,但非常感谢您的帮助。

如果您在第 3 方主机上托管数据库,则直接连接到您的数据库不是好的做法。

连接到数据库的最佳方式是通过 restful 服务,该服务通过秘密 keys/passwords 和 https 进行保护。此服务可以是您网站的一部分。

关于主机,这完全取决于将在何处使用桌面应用程序。您需要确保桌面应用程序和主机之间的延迟不会变慢。您还需要查看您的预算,看看您能负担得起什么。

我已经完成了很多连接托管在 GoDaddy 中的 MySql 服务器的应用程序。我将举例说明我是如何做到的

MySqlConnection conn;
MySqlCommand comm;
MySqlDataReader read;
string
server = "50.60.170.180",
database = "this_is_my_database_name",
dbPassword = "this_is_my_password",
dbUserName = "this_is_my_user_name";

string ConnectionString
{
    get
    {
        return "SERVER=" + server + ";DATABASE=" + database + ";UID=" + dbUserName + ";PASSWORD=" + dbPassword;
    }
}

void InitDB()
{
     conn = new MySqlConnection(ConnectionString);
     conn.Open();
     comm = new MySqlCommand();
     comm.Connection = conn;
}

void ReadEntry() 
{
     comm.CommandText = "Select * From MyTable";
     read = comm.ExecuteReader();
     while (read.Read()) 
     {
         string i_got_something_from_the_web = read[0].ToString();
     }
     read.Close();
}