在SqlConnection.Open(),asp.net上,对象引用未设置为对象的实例

时间:2013-09-05 16:58:19

标签: c# mysql asp.net sql

用c#学习asp.net,当我试图打开与数据库的连接时,我的代码就抛出了这个异常:

string connectionString ="DataSource=localhost,3306;Database=somedatabase;Uid=username;Pwd=password;";
using(SqlConnection con = new SqlConnection(connectionString))
{
    con.Open(); // Exception Thrown Here
}

看起来相对简单,所以我真的不知道为什么会发生这种情况。

另一件事;

所有这些代码都在网页上的标签内(不确定这是否有所不同,对asp.net来说还是新的)

干杯!

编辑 -

嘿,这是其余部分。 我将调查habib的解决方案。

我错过了一些程序集(mysql),但是当我试用它时生病了。

<%@ Language=C# %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<%@ Import Namespace="MySql" %>

<HTML>
   <script runat="server" language="C#">
   void MyButton_OnClick(Object sender, EventArgs e)
   {

   }

        void Page_Load(Object sender, EventArgs e)
           {
                // GET THE USERNAME AND PASSWORD FROM THE CLIENT
                NameValueCollection nvc = Request.Form;

                string username = nvc["username"];
                string password = nvc["password"];
                Login(username, password);
           }

           void Login(string username, string password)
           {
                string connectionString = "Data Source=localhost,3306;Database=something;Uid=somename;Pwd=somepass;";
                using(MySqlConnection con = new MySqlConnection(connectionString))
                {
                    con.Open();
    /*
                if (con.State != ConnectionState.Open)
                    return;

                try
                {
                    SqlDataReader   reader = null;
                    SqlCommand      command = new SqlCommand("SELECT * FROM accounts WHERE username=@username AND password=@password", con);

                    reader = command.ExecuteReader();
                    Response.Write(reader[0]);
                }
                catch (Exception e)
                {
                    Response.Write(e.ToString());
                }

                con.Close();*/
        }
        }

1 个答案:

答案 0 :(得分:2)

您正尝试通过SqlConnection,使用MySql.Data.MySqlClient.MySqlConnection

打开MySQL数据库连接

SqlConnection类用于SQL Server连接。