【C#】【MySQL】【GridView】刪除出現Parameter index is out of range


【編程語言】C#

【數據庫】MySQL

【控件】GridView

【問題描述】GridView控件中自帶[刪除],[編輯],[選擇],三個按鈕[編輯],[選擇]正常使用,但是在使用刪除時,卻報錯Parameter index is out of range

報錯頁面截圖如下:
報錯頁面

【代碼】

aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="icode.aspx.cs" Inherits="WebApplication_OmtpcMgrSystem.admin.icode" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
</head>
<body>
        <form id="form1" runat="server">
    <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:omtpcConnectionString %>" DeleteCommand="DELETE FROM invitationcode WHERE 注冊碼 = ?" InsertCommand="INSERT INTO invitationcode (創建日期, 注冊碼, 可用次數, 使用日期, 使用用戶) VALUES (?, ?, ?, ?, ?)" ProviderName="<%$ ConnectionStrings:omtpcConnectionString.ProviderName %>" SelectCommand="SELECT * FROM invitationcode" UpdateCommand="UPDATE invitationcode SET 創建日期 = ?, 可用次數 = ?, 使用日期 = ?, 使用用戶 = ? WHERE 注冊碼 = ?">
        <DeleteParameters>
            <asp:Parameter Name="注冊碼" Type="String" />
        </DeleteParameters>
        <InsertParameters>
            <asp:Parameter Name="創建日期" Type="DateTime" />
            <asp:Parameter Name="注冊碼" Type="String" />
            <asp:Parameter Name="可用次數" Type="String" />
            <asp:Parameter Name="使用日期" Type="DateTime" />
            <asp:Parameter Name="使用用戶" Type="String" />
        </InsertParameters>
        <UpdateParameters>
            <asp:Parameter Name="創建日期" Type="DateTime" />
            <asp:Parameter Name="可用次數" Type="String" />
            <asp:Parameter Name="使用日期" Type="DateTime" />
            <asp:Parameter Name="使用用戶" Type="String" />
            <asp:Parameter Name="注冊碼" Type="String" />
        </UpdateParameters>
    </asp:SqlDataSource>
    <asp:GridView ID="GridView1" runat="server" AllowPaging="True" AllowSorting="True" DataSourceID="SqlDataSource1">
        <Columns>
            <asp:CommandField ShowDeleteButton="True" ShowEditButton="True" ShowSelectButton="True" />
        </Columns>
    </asp:GridView>
        </form>
</body>
</html>

aspx.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace WebApplication_OmtpcMgrSystem.admin
{
    public partial class WebForm_CreateCode : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }
    }
}

已確認配置文件齊全,MySQL命令無誤,C#代碼無誤

【解決方案】

1.選中控件

例圖

2.找到控件屬性[DataKeyNames]

例圖

3.將主鍵名填入進入

例如:我的主鍵名是注冊碼,那么,我就在這個地方填寫 注冊碼
例圖

4.問題解決


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM