Начать соединение
System.ArgumentException: 'Формат строки инициализации не соответствует спецификации, начиная с индекса 17'
Приведенное выше сообщение об ошибке отображается в этой строке
private void InitializeConnection()
{
server = "localhost";
database = "table";
uid = "root";
password = "";
string connectionString = "SERVER=" + server + ";" + "DATABASE" + database + ";" + "UID" + uid + ";" + "PASSWORD" + password + ";";
ObjConnection = new MySqlConnection(connectionString); // error happens here
}
В вашем коде рядом с DATABASE
должно быть как DATABASE=
, то же самое для UID
и PASSWORD
. Все, что у вас было отсутствует, =
рядом с этими переменными
private void InitializeConnection()
{
server = "localhost";
database = "table";
uid = "root";
password = "";
string connectionString = "SERVER=" + server + ";" + "DATABASE=" + database + ";" + "UID=" + uid + ";" + "PASSWORD=" + password + ";";
ObjConnection = new MySqlConnection(connectionString);
}
Используйте класс MySqlConnectionStringBuilder
для форматирования строки подключения для вас. Он будет обрабатывать конкатенацию опций и экранирование специальных символов.
private void InitializeConnection()
{
var builder = new MySqlConnectionStringBuilder
{
Server = "localhost",
Database = "table",
UserID = "root",
Password = "",
}
string connectionString = builder.ConnectionString;
ObjConnection = new MySqlConnection(connectionString);
// OR: ObjConnection = new MySqlConnection(builder.ConnectionString);
}
=
для базы данных, Uid и пароль.