sql >> Databáze >  >> RDS >> Sqlserver

Jaký je správný způsob, jak naplnit DropDownList z databáze?

DropDownList můžete svázat se zdrojem dat (DataTable, List, DataSet, SqlDataSource atd.).

Pokud jste například chtěli použít DataTable:

ddlSubject.DataSource = subjectsTable;
ddlSubject.DataTextField = "SubjectNamne";
ddlSubject.DataValueField = "SubjectID";
ddlSubject.DataBind();

UPRAVIT – úplnější příklad

private void LoadSubjects()
{

    DataTable subjects = new DataTable();

    using (SqlConnection con = new SqlConnection(connectionString))
    {

        try
        {
            SqlDataAdapter adapter = new SqlDataAdapter("SELECT SubjectID, SubjectName FROM Students.dbo.Subjects", con);
            adapter.Fill(subjects);

            ddlSubject.DataSource = subjects;
            ddlSubject.DataTextField = "SubjectNamne";
            ddlSubject.DataValueField = "SubjectID";
            ddlSubject.DataBind();
        }
        catch (Exception ex)
        {
            // Handle the error
        }

    }

    // Add the initial item - you can add this even if the options from the
    // db were not successfully loaded
    ddlSubject.Items.Insert(0, new ListItem("<Select Subject>", "0"));

}

Chcete-li nastavit počáteční hodnotu pomocí značky, nikoli pomocí kódu na pozadí, zadejte možnosti a nastavte atribut AppendDataBoundItems na hodnotu true:

<asp:DropDownList ID="ddlSubject" runat="server" AppendDataBoundItems="true">
    <asp:ListItem Text="<Select Subject>" Value="0" />
</asp:DropDownList>

Poté byste mohli svázat DropDownList s DataSource v pozadí kódu (nezapomeňte odstranit:

ddlSubject.Items.Insert(0, new ListItem("<Select Subject>", "0"));

z kódu na pozadí, nebo budete mít dvě položky "".



  1. vyberte TOP N řádků z tabulky

  2. Přistupujte k DB5 k MySQL automaticky

  3. Vypočítejte běh nebo pruh v průběhu let v MySQL

  4. 100% bezpečný způsob ukládání html v MySQL