2008-12-11 60 views
3

我的任务是为传统网站创建新的前端。如何设置MySQL以使用C#?

它用php(pre-oo)编写,并使用MySQL数据库。主机提供了.Net包,但不提供Ms Sql Server。

这很好,因为数据库工作正常,但我真的想为页面使用Asp.net。但是,我从C#连接到MySQL的大多数教程都要求安装专门用于MySQL的ODBC驱动程序。不控制主机环境,我怀疑我能做到这一点:)

你有什么见解分享这个问题?

回答

9

MySql确实有.net的connector。您不需要使用ODBC,MySql Connector将允许您与MySql数据库进行交互,并且是完全托管的ADO.Net提供程序。如果您愿意,您可以使用二进制(dll)或源代码。这很简单,一旦你导入了dll,你只需要一个连接字符串(用户名,密码,位置),你就可以安装了!

这里是一个代码示例(参考: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(); 

我建议你不要把你的代码和毅力,在同一个地方,把你的Connexion的字符串中你App.Config中,但我认为这会告诉你如何去做。

+0

你如何“导入dll”? – 2012-08-29 23:56:42

0

同意帕特里克德信,再加上想增加与MySQL进行交互是最简单的方法是

  1. 获取MySQL connector for .Net v6.0 - 这对 Entity Framework
  2. 创建使用 ADO数据模型层的支持。网实体模型与数据库进行交互

OR

你也可以看看Linq to MySQL provider的实现 - 这很不错。

我以前的选择去了,当时我有类似的要求。