【问题标题】:How to fix MySQL.Connection.Open() error in release version of a UWP app?如何修复 UWP 应用发布版本中的 MySQL.Connection.Open() 错误?
【发布时间】:2020-04-23 20:48:59
【问题描述】:

我正在创建一个日托应用程序,并且一直在为构建的发布版本而苦苦挣扎(在调试中一切正常)。

我有一个从 MySql 数据库填充的组合框,但由于某种原因,应用程序在 Connection.Open() 上崩溃;

这是组合框的代码

        void FillComboBox()
    {

        using (MySqlConnection conn = new MySqlConnection(connectString))
        {

            try
            {
                MySqlCommand da = new MySqlCommand("select childName,username from Todlers;", conn);

                da.Connection = conn;
                da.Connection.Open();

                MySqlDataReader drd = da.ExecuteReader();
                Children child = new Children(UserName,ChildName);

                    while (drd.Read())
                    {
                        childCombo.Items.Add(drd["ChildName"].ToString());
                    }

                child.UserName = drd["UserName"].ToString();

                drd.Close();
                conn.Close();
            }
            catch (Exception ex)
            {
                Debug.Write(ex);

            }
        }
    }

该应用程序似乎运行良好,但 Combobox 未填充 我知道连接字符串和整体连接都很好,因为您首先需要它来登录应用程序

【问题讨论】:

  • 您能否让异常消息显示并粘贴到此处?没有它就很难提供帮助
  • 另外,如果你的 MySQL 服务器是本地的,问题可能与developercommunity.visualstudio.com/content/problem/278579/… 有关 - 你需要启用本地环回
  • @MartinZikmund 它的远程不是本地
  • 那么一定要尝试显示异常消息,以便我们知道发生了什么:-)
  • @MartinZikmund 我有日志,但是在这里发布太长了,我不确定什么是重要的

标签: c# mysql uwp database-connection


【解决方案1】:

我怀疑 .NET Native 编译器会丢弃某些类型,这些类型是通过 MySql.Data 库中的反射激活的。请转到 UWP 应用的 Properties 文件夹中的 Default.rd.xml 文件,并在 <Application> 标签内添加以下内容:

<Namespace Name="MySql.Data" Dynamic="Required All" />

然后重建,看看是否有帮助

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-02-27
    • 1970-01-01
    • 2019-02-09
    • 2015-11-11
    • 1970-01-01
    • 2016-01-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多