Как настроить MySQL для работы с C #? - PullRequest
3 голосов
/ 11 декабря 2008

Мне было поручено создать новый интерфейс для старого сайта.

Он написан на php (pre-oo) и использует базу данных MySQL. Хостинг предоставляет пакет .Net, но не предлагает Ms Sql Server.

Это нормально, так как база данных работает нормально, но я действительно хочу использовать Asp.net для страниц. Однако большинство уроков, которые я видел по подключению к MySQL из C #, требуют установки драйвера ODBC специально для MySQL. Не контролируя хостинг env, сомневаюсь, что смогу сделать именно это:)

Есть ли у вас какие-либо идеи, чтобы поделиться по этому вопросу?

Ответы [ 2 ]

9 голосов
/ 11 декабря 2008

MySql имеет разъем для .Net. Вам не нужно использовать ODBC,

MySql Connector позволит вам взаимодействовать с базой данных MySql и является полностью управляемым поставщиком ADO.Net. У вас есть бинарный (dll) или исходный код, если хотите. Это довольно просто, как только вы импортируете dll, вам просто нужна строка подключения (имя пользователя, пароль, местоположение), и вы будете настроены!

Вот пример кода (ref: bitdaddy.com ):

string MyConString = "SERVER=localhost;" +
    "DATABASE=mydatabase;" +
    "UID=testuser;" +
    "PASSWORD=testpassword;";
MySqlConnection connection = new MySqlConnection(MyConString);
MySqlCommand command = connection.CreateCommand();
MySqlDataReader Reader;
command.CommandText = "select * from mycustomers";
connection.Open();
Reader = command.ExecuteReader();
while (Reader.Read())
{
    string thisrow = "";
    for (int i= 0;i<Reader.FieldCount;i++)
            thisrow+=Reader.GetValue(i).ToString() + ",";
    listBox1.Items.Add(thisrow);
}
connection.Close();

Я предлагаю вам не размещать код и персистентность в одном месте и помещать строку подключения в ваш App.Config, но я думаю, что это покажет вам, как это сделать.

0 голосов
/ 11 мая 2009

Согласен с Патриком Дежарденсом, плюс хотел бы добавить, что самый простой способ взаимодействия с MySQL - это

  1. Получите MySQL-коннектор для .Net v6.0 - здесь есть поддержка Entity Framework
  2. Создание слоя модели данных с использованием ADO.Net Entity Model для взаимодействия с базой данных

OR

Вы также можете взглянуть на Linq to MySQL провайдера реализация - это довольно хорошо.

Я выбрал первый вариант, когда у меня было похожее требование.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...