PDA

View Full Version : کمک در مورد حذف اطلاعات



tazekar
دوشنبه 31 شهریور 1382, 06:23 صبح
سلام
موقع حذف اطلاعات از جدول این خطا رو میده :



The IListSource does not contain any data sources.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.Web.HttpException: The IListSource does not contain any data sources.

Source Error:


Line 115: this.sqlCon.Open();
Line 116: this.sqlDataA.Fill(dataSet1);
Line 117: this.DataGrid1.DataBind();
Line 118: this.sqlCon.Close();
Line 119: }


با این کد اطلاعاتم رو حذف میکنم


this.sqlCom.CommandText="delete from about where aboutname=N'"
+e.Item.Cells[0].Text
+"'";
this.sqlCon.Open();
this.sqlCom.ExecuteNonQuery();
this.sqlDataA.Fill(dataSet1);
this.DataGrid1.DataBind();
this.sqlCon.Close();

Vahid_Nasiri
دوشنبه 31 شهریور 1382, 08:50 صبح
قبل هر چیز یک سری به قوانین سایت در مورد عنوان تاپیک ها بزنید
http://www.barnamenevis.org/forum/viewtopic.php?p=12029#12029

=======


((TextBox)e.Item.Cells[0].Controls[0]).Text.Tri m()

tazekar
دوشنبه 31 شهریور 1382, 09:44 صبح
سلام استاد
شرمنده
تازه واردیم دیگه :oops:
ببخشید استاد ولی بازم همون خطا رو میگیره

Vahid_Nasiri
دوشنبه 31 شهریور 1382, 11:10 صبح
من باید سورس کامل شما را در این قسمت ببینم.

tazekar
دوشنبه 31 شهریور 1382, 11:12 صبح
private void Page_Load(object sender, System.EventArgs e)
{
// Put user code to initialize the page here
string strcon=System.Configuration.ConfigurationSettings. AppSettings["str_connection"];
this.sqlCon.ConnectionString=strcon;
this.sqlCom.Connection=sqlCon;
}

#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}

/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.dataSet1 = new System.Data.DataSet();
this.sqlCon = new System.Data.SqlClient.SqlConnection();
this.sqlDataA = new System.Data.SqlClient.SqlDataAdapter();
this.sqlCom = new System.Data.SqlClient.SqlCommand();
((System.ComponentModel.ISupportInitialize)(this.d ataSet1)).BeginInit();
//
// dataSet1
//
this.dataSet1.DataSetName = "NewDataSet";
this.dataSet1.Locale = new System.Globalization.CultureInfo("fa-IR");
//
// sqlDataA
//
this.sqlDataA.SelectCommand = this.sqlCom;
this.Button4.Click += new System.EventHandler(this.Button4_Click);
this.Button3.Click += new System.EventHandler(this.Button3_Click);
this.Button1.Click += new System.EventHandler(this.Button1_Click);
this.Load += new System.EventHandler(this.Page_Load);
((System.ComponentModel.ISupportInitialize)(this.d ataSet1)).EndInit();

}
#endregion

private void Button1_Click(object sender, System.EventArgs e)
{
this.sqlCon.Open();
this.sqlCom.CommandText="insert about values (N'"
+this.TextBox1.Text
+"',N'"
+this.TextBox2.Text
+"')";
this.sqlCom.ExecuteNonQuery();
this.sqlCon.Close();
this.TextBox2.Text=null;
this.TextBox1.Text=null;
this.dataSet1.Clear();
}

private void Button2_Click(object sender, System.EventArgs e)
{
this.TextBox2.Text=null;
this.TextBox1.Text=null;
}

private void Button3_Click(object sender, System.EventArgs e)
{
this.sqlCon.Open();
this.sqlCom.CommandText="select * from about";
this.sqlDataA.Fill(dataSet1);
this.DataGrid1.DataBind();
this.sqlCon.Close();
this.dataSet1.Clear();
}

private void DataGrid1_DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
this.sqlCom.CommandText="delete from about where aboutname=N'"
+((TextBox)e.Item.Cells[0].Controls[0]).Text.Trim( )
+"'";
this.sqlCon.Open();
this.sqlCom.ExecuteNonQuery();
this.sqlDataA.Fill(dataSet1);
this.DataGrid1.DataBind();
this.sqlCon.Close();
}

private void DataGrid1_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEvent Args e)
{
this.DataGrid1.CurrentPageIndex=e.NewPageIndex;
}

private void Button4_Click(object sender, System.EventArgs e)
{
this.sqlCon.Open();
this.sqlCom.CommandText="delete from about";
this.sqlCom.ExecuteNonQuery();
this.sqlCon.Close();
}
}

tazekar
دوشنبه 31 شهریور 1382, 11:14 صبح
هرموقع که delete انجام میشه و میخوام datagrid رو اپدیت کنم این خطا رخ میده .

Vahid_Nasiri
دوشنبه 31 شهریور 1382, 17:55 عصر
شما وقتی

this.sqlCon.Close();
بعد از اون دیگر نمی توانید با آن کار کنید.

در ضمن سعی کنید این کانکشن و غیره را در کد تولید کنید و نه با استفاده از ابزار ویژوال و کنترل های آن.

چند مثال کامل در این زمینه :

http://www.ondotnet.com/pub/a/dotnet/2003/02/24/aspdatactl.html

http://www.zdnet.com.au/builder/program/windows/story/0,2000035027,20271973,00.htm

http://www.dotnetjohn.com/articles/articleid68.aspx

tazekar
دوشنبه 31 شهریور 1382, 21:27 عصر
اخه استاد هر موقع که احتیاج بوده کانکشن رو باز کردم و دوباره بستم .
یعنی به نظر شما وقتی کانکشن رو باز میکنم بذارم تا آخر کار باز بموونه ؟
(پلز اگه چرت گفتم بهم نخندید :oops: )

tazekar
دوشنبه 31 شهریور 1382, 21:42 عصر
با این کد درست کار کرد :




private void DataGrid1_DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
this.sqlCom.CommandText="delete from about where aboutname=N'"
+e.Item.Cells[0].Text
+"'";
this.sqlCon.Open();
this.sqlCom.ExecuteNonQuery();
this.sqlCom.CommandText="select * from about";
this.sqlDataA.Fill(dataSet1);
this.DataGrid1.DataBind();
this.sqlCon.Close();
}


استاد برای فروم چکار باید بکنم ؟ کجا بیام؟ :cry:

Vahid_Nasiri
سه شنبه 01 مهر 1382, 00:19 صبح
http://www.barnamenevis.org/forum/groupcp.php

tazekar
سه شنبه 01 مهر 1382, 07:27 صبح
سلام استاد .
آخه یه دفه اومدم :oops: اما بیرونم کردین :cry:
میترسم بازم بندازینم بیرون :roll:

Vahid_Nasiri
سه شنبه 01 مهر 1382, 10:57 صبح
کسی از گروه حذف نمی شود که فقط یکبار هم که شده در گروه بگوید ohum !!

tazekar
سه شنبه 01 مهر 1382, 11:41 صبح
آخه کجا ohum !! بگم ؟

Vahid_Nasiri
سه شنبه 01 مهر 1382, 14:50 عصر
دوباره ثبت نام کن!

tazekar
سه شنبه 01 مهر 1382, 17:17 عصر
حالا چرا میزنید استاد :D
چشم یه بار دیگه میام .