Событие обновления строки GridView не обновляет базу данных, но не выдает ошибку, просто ничего не делает
Я использую Visual Studio 2015 и SQL Server 2014, я написал код для выполнения того, что я хочув другой форме в моем проекте, поэтому я решил скопировать и вставить существующий код на новую страницу, но я начал получать ошибки, которые уже были удивительными, так как это копия, и оригинал работает нормально, но я исправил их, но кнопка обновления по-прежнему не отображаетсяизменение базы данных
protected void GridView2_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
// Finding the controls from Gridview for the row which is going to update
Label id =(Label)GridView1.Rows[e.RowIndex].FindControl("lbl_ID") as Label;
TextBox Plate = (TextBox)GridView1.Rows[e.RowIndex].FindControl("txt_Plate") as TextBox;
TextBox Make = (TextBox)GridView1.Rows[e.RowIndex].FindControl("txt_Make") as TextBox;
TextBox Model = (TextBox)GridView1.Rows[e.RowIndex].FindControl("txt_Model") as TextBox;
TextBox Description = (TextBox)GridView1.Rows[e.RowIndex].FindControl("txt_Description") as TextBox;
TextBox Route = (TextBox)GridView1.Rows[e.RowIndex].FindControl("txt_Route") as TextBox;
string ID = id.Text;
string plate = Plate.Text;
string make = Make.Text;
string model = Model.Text;
string Desc = Description.Text;
string route = Route.Text;
SqlConnection con = new SqlConnection("Data Source = SHIREDOCKS\\SQLEXPRESS; Initial Catalog = JerichoCarPark; Integrated Security = True");
con.Open();
// updating the record
SqlCommand cmd = new SqlCommand("VehicleUpdate", con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("VehicleID", ID);
cmd.Parameters.AddWithValue("VehiclePlateNo", plate);
cmd.Parameters.AddWithValue("VehicleMake", make);
cmd.Parameters.AddWithValue("VehicleModel", model);
cmd.Parameters.AddWithValue("VehicleDescription", Desc);
cmd.Parameters.AddWithValue("JTARoute",route);
cmd.ExecuteNonQuery();
con.Close();
// Setting the EditIndex property to -1 to cancel the Edit mode in Gridview
GridView1.EditIndex = -1;
// Call ShowData method for displaying updated data
ShowData();
}
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" BackColor="#CCCCCC" BorderColor="Yellow" BorderStyle="Solid" BorderWidth="5px" CellPadding="6" Font-Names="Kozuka Gothic Pro B" style="z-index: 3; left: 322px; top: 112px; position: absolute; height: 470px; width: 1167px" OnRowCancelingEdit="GridView2_RowCancelingEdit" OnRowDeleting="GridView2_RowDeleting" OnRowEditing="GridView2_RowEditing" OnRowUpdating="GridView2_RowUpdating">
<AlternatingRowStyle BackColor="#99CCFF" />
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:Button ID="btn_Edit" runat="server" CommandName="Edit" Text="Edit" BackColor="#3366FF" Font-Names="Century Gothic" ForeColor="White" Font-Size="Medium" BorderStyle="Solid" CausesValidation="True" UseSubmitBehavior="False" />
</ItemTemplate>
<EditItemTemplate>
<asp:Button ID="btn_Update" runat="server" CommandName="Update" Text="Update" BackColor="#3366FF" Font-Names="Century Gothic" ForeColor="White" BorderStyle="Solid" UseSubmitBehavior="False"/>
<br></br>
<asp:Button ID="btn_Cancel" runat="server" CommandName="Cancel" Text="Cancel" BackColor="#3366FF" Font-Names="Century Gothic" ForeColor="White" BorderStyle="Solid" UseSubmitBehavior="False" />
<br></br>
<asp:Button ID="btn_Delete" runat="server" CommandName="Delete" Text="Delete" BackColor="#3366FF" Font-Names="Century Gothic" ForeColor="White" BorderStyle="Solid" UseSubmitBehavior="False" />
</EditItemTemplate>
</asp:TemplateField>
Хранимая процедура:
ALTER PROCEDURE [dbo].[VehicleUpdate]
@VehicleID VARCHAR(50) = '',
@VehiclePlateNo VARCHAR(6) = '',
@VehicleMake VARCHAR(20) = '',
@VehicleModel VARCHAR(50) = '',
@VehicleDescription VARCHAR(225) = '',
@JTARoute VARCHAR(20) = ''
AS
BEGIN
UPDATE Vehicles
SET [VehiclePlateNo] = (@VehiclePlateNo),
[VehicleMake] = (@VehicleMake),
[VehicleModel] = (@VehicleModel),
[VehicleDescription] = (@VehicleDescription),
[JTARoute] = (@JTARoute)
WHERE [VehicleID] = @VehicleID
END
Я ожидал, что она обновит базу данных, как это делает исходная страница, но она просто перезагружается и показывает не обновленную таблицу