在C#中,当我构建没有错误的项目时,但当我运行页面时,会显示错误
该错误是(在我的网页中):(不包含“GVTable1\u rowdeleding”的定义,并且没有接受类型为“ASP”的第一个参数的扩展方法“GVTable1\u rowdeleding”。可以找到desktopmodules\u friends1\u friends1\u friends\u ascx(是否缺少using指令或程序集引用?) 但我的代码是: 在ascx中:在C#中,当我构建没有错误的项目时,但当我运行页面时,会显示错误,c#,html,asp.net,ascx,C#,Html,Asp.net,Ascx,该错误是(在我的网页中):(不包含“GVTable1\u rowdeleding”的定义,并且没有接受类型为“ASP”的第一个参数的扩展方法“GVTable1\u rowdeleding”。可以找到desktopmodules\u friends1\u friends1\u friends\u ascx(是否缺少using指令或程序集引用?) 但我的代码是: 在ascx中: 您发布了方法的代码GVTable1\u RowCommand。 该错误与另一种方法有关:GVTable1\u rowdel
您发布了方法的代码
GVTable1\u RowCommand
。
该错误与另一种方法有关:GVTable1\u rowdeleding
。
您应该检查方法
GVTable1\u rowdeleding
是否存在您必须在aspx页面而不是ascx中写入gridview事件(rowdeleding) 显示行删除事件“GVTable1_rowdeleding”而不是“GVTable1_rowdeleding”的代码,我认为您没有添加该代码,这就是导致此运行时错误的原因。
<asp:TableRow><asp:TableCell>
<asp:GridView ID="GVTable1" runat="server" AutoGenerateColumns ="false" OnRowCommand="GVTable1_RowCommand" OnRowDeleting="GVTable1_RowDeleting" OnRowEditing ="GVTable1_RowEditing">
<columns>
<asp:TemplateField HeaderText="No.">
<ItemTemplate>
<%# Container.DataItemIndex + 1 %>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="name" HeaderText="name"/>
<asp:BoundField DataField="famil" HeaderText="famil"/>
<asp:BoundField DataField="field" HeaderText="field"/>
<asp:TemplateField ShowHeader="False">
<ItemTemplate>
<asp:Button ID="btnDelete" runat="server" CausesValidation="false" CommandName="Delete" Text="Delete" CommandArgument='<%# Eval("id") %>' onClientClick="return confirm('Are you sure?')" />
<asp:Button ID="btnEdit" runat="server" CausesValidation="false" CommandName="Edit" Text="Edit" CommandArgument='<%# Eval("id") %>' />
</ItemTemplate>
</asp:TemplateField>
</columns>
</asp:GridView>
</asp:TableCell>
</asp:TableRow>
protected void GVTable1_RowCommand(object sender, GridViewCommandEventArgs e)
{
switch (e.CommandName)
{
case "Delete":
Int32 rn = Convert.ToInt32(e.CommandArgument);
string connstring = "Data Source=VAVAN-PC\\SQL2014;Initial Catalog=db1;Persist Security Info=True;User------;
string queryDel = "delete from [db1].[dbo].[tbl1] where [db1].[dbo].[tbl1].id = @id;";
SqlConnection conn = new SqlConnection(connstring);
SqlCommand cmd = new SqlCommand(queryDel, conn);
conn.Open();
cmd.Parameters.AddWithValue("@id", rn);
cmd.ExecuteNonQuery();
conn.Close();
Fill_grid();
break;