Bartosz Karpiński
Bartosz Karpiński

Reputation: 487

How to connect W10 Universal App with MySQL database

I'm writing my first Windows 10 Universal App that operates on MySql database. I used code from this guide (It's for Windows 8 store apps):

https://blogs.oracle.com/MySqlOnWindows/entry/how_to_using_connector_net

But when I try to open connection with my database I get error:

An exception of type 'System.NotImplementedException' occurred in >MySql.Data.RT.dll but was not handled in user code

Additional information: SSL not supported in this WinRT release.

public class DBconnector
{
    static string server = "127.0.0.1";
    static string database = "hurtownia";
    static string user = "root";
    static string pswd = "root";

    public static bool login(string email, string password)
    {
        string connectionString = "Server = " + server + ";database = " + database + ";uid = " + user + ";password = " + pswd + ";";
        using (MySqlConnection connection = new MySqlConnection(connectionString))
        {
            connection.Open();
            MySqlCommand checkLogin = new MySqlCommand("select password_hash, password_salt from users where email = \""+email+"\"",connection);
            using (MySqlDataReader reader = checkLogin.ExecuteReader())
            {
                reader.Read();
                string hash = reader.GetString("password_hash");
                string salt = reader.GetString("password_salt");

                bool result = passwordGenerator.compare(password, hash, salt);

                if (result)
                    return true;
                else
                    return false;
            }
        }
    }
}

So, my question is how to fix that and correctly connect to MySql database in Windows 10 Universal App.

Upvotes: 7

Views: 6320

Answers (2)

sLedgem
sLedgem

Reputation: 501

Add ";SslMode=None" to your connection string

Upvotes: 16

Jeffrey Chen
Jeffrey Chen

Reputation: 4680

I'm afarid the SSL connection is not supported by MySql WinRT connector. You have to disable the SSL connection from the MySql server.

Chapter 8 Connector/Net Support for Windows Store

Connector/Net RT does not support SSL connections or Windows authentication. Also, SHA256 is not currectly supported.

6.3.6.4 SSL Command Options

BTW, another alternative way to retrieve the data from mysql is host a REST service: App -> Rest Service -> MySQL

Upvotes: 0

Related Questions