【问题标题】:How to connect my Xamarin app with local mySQL server?如何将我的 Xamarin 应用程序与本地 mySQL 服务器连接?
【发布时间】:2021-07-22 23:03:41
【问题描述】:

我正在尝试使用以下代码连接到 mySQL 服务器:(只是我整个代码的一部分)

using MySql.Data.MySqlClient;
//...
public void ConnectToServer()
        {
            string ConnectionString = 
            "Server=DESKTOP-91JG566;Database=db_server;Uid=user;Pwd=123456A+;";
            MySqlConnection cConn = new MySqlConnection(ConnectionString);
            cConn.Open(); // this returns the exception
            serverStatus = cConn.Ping() ? serverStatus = "connected" : serverStatus = "disconnected";
        }

我正在使用 MySQL Workbench,我的服务器有数据库https://i.stack.imgur.com/jxn84.jpg

异常显示:System.TypeInitializationException: 'MySql.Data.MySqlClient.MySqlConfiguration' 的类型初始化程序引发了异常。'

我已经搜索过了,即使我在项目属性中启用了“SQL Server 调试”,情况也是一样的。 问题可能是因为我的连接字符串错误,我不确定。

我的目标是与服务器通信、查询他、接收订单等...

【问题讨论】:

  • 从客户端直接访问远程数据库服务器是一个可怕的、可怕的、非常糟糕的主意,你不应该尝试它。请使用网络服务层
  • 是的,我即将使用rest api,但我认为这是实现REST所需要的
  • 不,服务与数据库对话,客户端与服务对话。客户端不直接与数据库交互
  • 谢谢,我明白了。

标签: c# mysql xamarin.forms server


【解决方案1】:

正如 Jason 已经提到的那样,这是一个可怕的想法。相反,我建议你构建一些迷你 REST API 或者甚至使用一些 serverless 服务。

当您准备好 REST API 或 Azure 函数后,您就可以使用您的 C# 代码与它们进行通信,更准确地说是使用 .NET 中的 HttpClient

您的移动应用程序将成为与 REST API “对话”的客户端,REST API 将继续处理您的请求并向数据库发出请求,获取一些数据并返回您可以的 JSON 或 XML,稍后您可以, 反序列化为 C# 对象并展示给用户。

最简单的例子位于MS Docs页面here,大家可以看看。

祝你编码好运!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-04-18
    • 1970-01-01
    • 1970-01-01
    • 2019-12-29
    • 1970-01-01
    • 2013-03-10
    • 1970-01-01
    • 2020-06-08
    相关资源
    最近更新 更多