PDA

View Full Version : نحوه کار با MySQL Connector/Net ASP.NET



maryammb66
دوشنبه 21 آذر 1390, 09:33 صبح
سلام خدمت دوستان
من برای طراحی سایت از asp.net و پایگاه داده mysql استفاده کردم!
برای برقراری ارتباط بین این دو باید از MySQL Connector/Net ASP.NET استفاده کنم!
MySQL Connector/Net ASP.NET رو دانلود کردم ، حالا نمی دونم چطوری باهاش کار کنم !
میشه کمکم کنید

mo.esmp
دوشنبه 21 آذر 1390, 14:24 عصر
http://christianasp.net/usingmysql50withaspnet-part1.aspx

maryammb66
سه شنبه 22 آذر 1390, 08:06 صبح
کد نویسی رو انجام دادم ، حالا وقتی می خواد کانکشن رو باز کنه این پیغام خطا رو میده !
حالا نمی دونم کدوم قسمت اشتباه کردم!


System.NullRefrenceException ={"Object reference not set to an instance of an object

میشه کمکم کنید

Javad_Darvish_Amiry
سه شنبه 22 آذر 1390, 13:14 عصر
1- کانکشن استرینگ رو درست وارد کردید؟


Server=YOUR_SERVERNAME;Port=MY_SQL_PORT;Database=Y OUR_DATABASE_NAME;Uid=DATABASE_USER_NAME;Pwd=PASSW ORD_FOR_USER

2- موقع نصب My پورت پیش فرض رو عوض نکردید؟ (پورت پیش فرض 3306 هست که توی کانکشن استرینگ باید ست باشه).

3- اما خطایی که ذکر کردید، یه خطای خیلی عمومی هست و نمیشه چیزی ازش فهمید؛ کدتون رو بذارید فکر کنم بهتر باشه؛

maryammb66
چهارشنبه 23 آذر 1390, 09:07 صبح
برای برقراری ارتباط بین این دو باید از MySQL Connector/Net ASP.NET استفاده کنم!
و تو پروژه ام هم اضافه اش کردم!
کد هم به صورت زیر هستش

maryammb66
چهارشنبه 23 آذر 1390, 12:02 عصر
1- تو وب کانفیگ کانکشن استرینگ

g


<add name="STNMap" connectionString="server=localhost ;Port=3306;database=stnmap; Uid=root ;Password=123" providerName="MySql.Data.MySqlClient"/>;




2- کد برنامه در صفحه main


using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using MySql.Data.MySqlClient;
using System.Web.Configuration;

public partial class Main : System.Web.UI.Page
{
string strCon = WebConfigurationManager.ConnectionStrings["STNMap"].ConnectionString;

MySqlConnection conn = null;
MySqlCommand cmd = null;
MySqlDataReader dtr = null;
static DataTable dtblBrand = new DataTable();
DataColumn dcolBrandNo = new DataColumn("intBrandNo");
protected void Page_Load(object sender, EventArgs e)
{

MySqlConnection conn = new MySqlConnection(strCon);

if (!IsPostBack)
{
dtblBrand.Rows.Clear();
dtblBrand.Columns.Clear();
dtblBrand.Columns.Add(dcolBrandNo);
BindlstCategory(conn);
lstCategory.SelectedIndex = 0;



BindBrands();
if (gwBrands.Rows.Count != 0)
{
int intBrandNo = Convert.ToInt32(gwBrands.DataKeys[0].Value);
BindMobileModels(intBrandNo);
}
}

}

protected void BindBrands()
{
MySqlCommand cmd = new MySqlCommand("SELECT * FROM tbl_Brands", conn);
cmd.CommandType = CommandType.Text;

conn.Open();
// cmd.Connection.Open();
dtr = cmd.ExecuteReader();
gwBrands.DataSource = dtr;
gwBrands.DataBind();
dtr.Close();
conn.Close();
}


protected void BindMobileModels(int intBrandNo)
{
MySqlCommand cmd = new MySqlCommand("SELECT * FROM tbl_Map WHERE intBrandNo=@intBrandNo ", conn);
cmd.CommandType = CommandType.Text;


MySqlParameter parmBrandNo = new MySqlParameter("@intBrandNo", intBrandNo);
cmd.Parameters.Add(parmBrandNo);

conn.Open();
// cmd.Connection.Open();
dtr = cmd.ExecuteReader();
gwMobiles.DataSource = dtr;
gwMobiles.DataBind();
dtr.Close();
conn.Close();
}


protected void gwBrands_RowCommand(object sender, GridViewCommandEventArgs e)
{
int intBrandNo = Convert.ToInt32(e.CommandArgument);
BindMobileModels(intBrandNo);
}


protected string Image(string name)
{
return "./Image/" + name;

}


protected void btnSearch_Click(object sender, EventArgs e)
{
MySqlCommand cmd = new MySqlCommand("Select * FROM tbl_Brands WHERE intCategoryID=@intCategoryID ", conn);
cmd.CommandType = CommandType.Text;

MySqlParameter parmCategoryNo = new MySqlParameter("@intCategoryID", Convert.ToInt32(lstCategory.SelectedValue));
cmd.Parameters.Add(parmCategoryNo);

conn.Open();
// cmd.Connection.Open();
dtr = cmd.ExecuteReader();
gwBrands.DataSource = dtr;
gwBrands.DataBind();

dtr.Close();
conn.Close();

}
private void BindlstCategory(MySqlConnection conn)
{
MySqlCommand cmd = new MySqlCommand("Select * FROM tbl_Category", conn);
cmd.CommandType = CommandType.Text;

conn.Open();
// cmd.Connection.Open();
dtr = cmd.ExecuteReader();
lstCategory.DataSource = dtr;
lstCategory.DataTextField = "nvcCategoryName";
lstCategory.DataValueField = "intCategoryID";
lstCategory.DataBind();
dtr.Close();
conn.Close();


}

}

H

Javad_Darvish_Amiry
پنج شنبه 24 آذر 1390, 14:03 عصر
کجا خطای مورد نظر رخ میده؟ تو کدی که بالا نوشتید، روی کدوم خط هست؟ اگه براتون ممکنه، روی Page_Load یه BreakPoint بذارید و برنامه رو خط به خط دنبال کنید؛ نتیجه رو بذارید اینجا؛ ببینید روی کدوم خط خطا اتفاق میفته و کدوم متغیر موقع استفاده شدن null هست؛ چون خطای بالا، میگه شما دارید از متغیری استفاده میکنید که null هست؛ اون باید پیدا بشه.

maryammb66
شنبه 26 آذر 1390, 10:39 صبح
ممنون مشکلم حل شد