m-alizadeh
جمعه 23 اسفند 1387, 08:06 صبح
با سلام و تبریک پیشاپیش سال نو
من یک برنامه ساده با سی شارپ نوشتم که خیلی راحت از بانک طلاعاتی اس کیوال 2005اطلاعات رو select می کنه و در فرم نشون میده ولی هنگام افزودن یا حذف اطلاعات ، این عملیات رو فقط در حافظه یا بطور دقیق تر در دیتاست اعمال می کنه و در دیتابیس اصلی تغییرات اعمال نمیشه و با اجرای مجدد برنامه اطلاعات به حالت قبل از افزودن یا حذف کردن بر می گردن.
ممنون میشم اگه راهنمایی کنید
نمونه کد برای حذف کردن از بانک اطلاعاتی:
private void btnDelete_Click(object sender, EventArgs e)
{
int intPosition;
SqlCommand objCommand = new SqlCommand();
intPosition =this.BindingContext[objDataView].Position - 1;
if( intPosition < 0 )
intPosition = 0;
objCommand.Connection = objConnection;
objCommand.CommandText = "DELETE FROM authors WHERE id = @id";
objCommand.Parameters.AddWithValue("@id",this.BindingContext[objDataView,"id"].Current);
objConnection.Open();
objCommand.ExecuteNonQuery();
objConnection.Close();
FillDataSetAndView();
BindFields();
this.BindingContext[objDataView].Position =intPosition;
ShowPosition();
ToolStripStatusLabel1.Text = "رکورد حذف گردید";
}
private void FillDataSetAndView()
{
objDataSet = new DataSet();
objDataAdapter.Fill(objDataSet,"authors");
objDataView = new DataView(objDataSet.Tables["authors"]);
objCurrencyManager = (CurrencyManager)(this.BindingContext[objDataView]);
}
بقیه دستورات برای اتصال به بانک رو هم سراسری تعریف کرده ام.
با تشکر
من یک برنامه ساده با سی شارپ نوشتم که خیلی راحت از بانک طلاعاتی اس کیوال 2005اطلاعات رو select می کنه و در فرم نشون میده ولی هنگام افزودن یا حذف اطلاعات ، این عملیات رو فقط در حافظه یا بطور دقیق تر در دیتاست اعمال می کنه و در دیتابیس اصلی تغییرات اعمال نمیشه و با اجرای مجدد برنامه اطلاعات به حالت قبل از افزودن یا حذف کردن بر می گردن.
ممنون میشم اگه راهنمایی کنید
نمونه کد برای حذف کردن از بانک اطلاعاتی:
private void btnDelete_Click(object sender, EventArgs e)
{
int intPosition;
SqlCommand objCommand = new SqlCommand();
intPosition =this.BindingContext[objDataView].Position - 1;
if( intPosition < 0 )
intPosition = 0;
objCommand.Connection = objConnection;
objCommand.CommandText = "DELETE FROM authors WHERE id = @id";
objCommand.Parameters.AddWithValue("@id",this.BindingContext[objDataView,"id"].Current);
objConnection.Open();
objCommand.ExecuteNonQuery();
objConnection.Close();
FillDataSetAndView();
BindFields();
this.BindingContext[objDataView].Position =intPosition;
ShowPosition();
ToolStripStatusLabel1.Text = "رکورد حذف گردید";
}
private void FillDataSetAndView()
{
objDataSet = new DataSet();
objDataAdapter.Fill(objDataSet,"authors");
objDataView = new DataView(objDataSet.Tables["authors"]);
objCurrencyManager = (CurrencyManager)(this.BindingContext[objDataView]);
}
بقیه دستورات برای اتصال به بانک رو هم سراسری تعریف کرده ام.
با تشکر