udl连接字符串有效,但我的ASP.Net文件在连接时抛出异常

时间:2013-07-24 04:45:06

标签: asp.net mysql string connection

我最近从经典的ASP到ASP.Net,我无法连接到我的测试数据库。

我正在使用Visual Studio 2012和MySQL 5.6,我正在关注this教程。

我创建了一个UDL文件,其中测试连接成功,在我的应用程序中,我已将以下内容添加到连接字符串(这是我在UDL中用于连接的字符串):

<connectionStrings>
   <add name="MyConn" connectionString="DRIVER={MySQL ODBC 5.2 Unicode Driver};Database=Zen;Server=localhost;UID=root;pwd=*****;" />
</connectionStrings>

这是我在创建UDL文件时使用的相同连接字符串。

运行时,我的应用程序抛出以下异常:

发生错误:错误[IM002] [Microsoft] [ODBC驱动程序管理器]未找到数据源名称且未指定默认驱动程序。

我不知道这是否有帮助,但我的cs代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.Odbc;
using System.Configuration;
using MySql.Data;

namespace Zen
    {
    public partial class WebForm1 : System.Web.UI.Page
        {
        protected void Page_Load(object sender, EventArgs e)
        {
                try
                {
                    using(OdbcConnection connection = new OdbcConnection(ConfigurationManager.ConnectionStrings["MyConn"].ConnectionString))
                {
                    connection.Open();
                    using(OdbcCommand command = new OdbcCommand("SELECT name FROM test_users", connection))
                    using(OdbcDataReader dr = command.ExecuteReader())
                    {
                        while(dr.Read())
                            Response.Write(dr["name"].ToString() + "<br />");
                        dr.Close();
                    }
                    connection.Close();
                }
            }
            catch(Exception ex)
            {
                Response.Write("An error occured: " + ex.Message);
            }

    }
}

}

1 个答案:

答案 0 :(得分:0)

好。我通过安装32位MySQL ODBC驱动程序修复了这个问题。