page_init中的C#动态向导给出重复的ID错误

时间:2019-07-05 11:29:47

标签: c# sql

我正在向ASP向导添加动态文本框,并将文本框ID设置为与SQL Server表中的ID匹配。我检查了ID是否都是唯一的,但它们都是唯一的,但是当我从向导步骤单击到另一个时,我一直收到以下错误。

我需要文本框ID来匹配数据库中的唯一ID,因为我正在使用Ajax实时发布数据。肯定是导致错误的textbx ID。

protected void Page_Init()
{
    play1(null,null);
}

protected void play1(object sender, EventArgs e)
{
    var wizsteps = sdc.usp_WizSteps().ToList();

    foreach (var step in wizsteps)
    {      
        WizardStep ws = new WizardStep();
        ws.ID = step.SectionId;
        ws.Title = step.SectionName;
        wz1.WizardSteps.Add(ws);
        ws.Title = step.SectionName;

        Table tbl = new Table();
        ws.Controls.Add(tbl);
        //tbl.ID = UniqueID;
        ///End of step
        var conts = sdc.usp_WizStepContent(int.Parse(step.SectionId)).ToList();

        foreach (var cont in conts)
        {
            string txt = cont.strText;
            //DataTable dt = new DataTable();
            TableRow tr = new TableRow();

            tbl.Rows.Add(tr);
            System.Web.UI.WebControls.Label lbl = new System.Web.UI.WebControls.Label();
            lbl.Text = txt;
            TableCell td = new TableCell();
            tr.Controls.Add(td);
            td.Controls.Add(lbl);

            if (cont.InputType == "Textbox")
            {

                TableCell tdi = new TableCell();
                tr.Controls.Add(tdi);
                System.Web.UI.WebControls.TextBox tb = new System.Web.UI.WebControls.TextBox();
                tdi.Controls.Add(tb);
                tb.ID = cont.id.ToString();
                tb.CssClass = "changable";
                tb.Text = cont.id.ToString();
            }
        }
    }
    wz1.ActiveStepIndex = 0;
}

1 个答案:

答案 0 :(得分:0)

我的坏。在向导步骤和文本框之间复制ID。