To update the database after inserting/updating/deleting a record from the grid you need to create server-side methods and use them together with the server-side events of the ASP.NET Grid:
* OnInsertCommand * OnUpdateCommand * OnDeleteCommand * OnRebind
OnInsertCommand="InsertRecord" OnUpdateCommand="UpdateRecord" OnDeleteCommand="DeleteRecord" OnRebind="RebindGrid">
Each method must have two arguments. The first argument is of type Object and represents the Grid object which triggered the event. The second argument is of type GridRecordEventArgs and contains the data that must be stored in the database.
void DeleteRecord(object sender, GridRecordEventArgs e) { OleDbConnection myConn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("Northwind.mdb")); myConn.Open();
OleDbCommand myComm = new OleDbCommand("DELETE FROM Orders WHERE OrderID = @OrderID", myConn);
myComm.Parameters.Add("@OrderID", OleDbType.Integer).Value = e.Record["OrderID"];
myComm.ExecuteNonQuery(); myConn.Close(); }
void UpdateRecord(object sender, GridRecordEventArgs e) { OleDbConnection myConn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("Northwind.mdb")); myConn.Open();
OleDbCommand myComm = new OleDbCommand("UPDATE Orders SET ShipName = @ShipName, ShipCity = @ShipCity, ShipCountry = @ShipCountry, Deleted = @Deleted WHERE OrderID = @OrderID", myConn);
myComm.Parameters.Add("@ShipName", OleDbType.VarChar).Value = e.Record["ShipName"]; myComm.Parameters.Add("@ShipCity", OleDbType.VarChar).Value = e.Record["ShipCity"]; myComm.Parameters.Add("@ShipCountry", OleDbType.VarChar).Value = e.Record["ShipCountry"]; myComm.Parameters.Add("@Deleted", OleDbType.Boolean).Value = e.Record["Deleted"]; myComm.Parameters.Add("@OrderID", OleDbType.Integer).Value = e.Record["OrderID"];
myComm.ExecuteNonQuery(); myConn.Close(); }
void InsertRecord(object sender, GridRecordEventArgs e) { OleDbConnection myConn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("Northwind.mdb")); myConn.Open();
OleDbCommand myComm = new OleDbCommand("INSERT INTO Orders (ShipName, ShipCity, ShipCountry, Deleted) VALUES(@ShipName, @ShipCity, @ShipCountry, @Deleted)", myConn);
myComm.Parameters.Add("@ShipName", OleDbType.VarChar).Value = e.Record["ShipName"]; myComm.Parameters.Add("@ShipCity", OleDbType.VarChar).Value = e.Record["ShipCity"]; myComm.Parameters.Add("@ShipCountry", OleDbType.VarChar).Value = e.Record["ShipCountry"]; myComm.Parameters.Add("@Deleted", OleDbType.Boolean).Value = e.Record["Deleted"];
myComm.ExecuteNonQuery(); myConn.Close(); }
void RebindGrid(object sender, EventArgs e) { // re-create the grid from the updated database }
|
No responses found. Be the first to respond and make money from revenue sharing program.
|