Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Какъв е правилният начин за попълване на DropDownList от база данни?

Можете да свържете DropDownList към източник на данни (DataTable, List, DataSet, SqlDataSource и т.н.).

Например, ако искате да използвате DataTable:

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

РЕДАКТИРАНЕ - По-пълен пример

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"));

}

За да зададете първоначална стойност чрез маркирането, вместо зад кода, посочете опцията(ите) и задайте атрибута AppendDataBoundItems на true:

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

След това можете да свържете DropDownList към DataSource в задния код (само не забравяйте да премахнете:

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

от задния код, или ще имате два елемента "".



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Редове на SQL Server не могат да се редактират за Access след вмъкване

  2. Вижте какво прави sp_execute

  3. Индекс на SQL Server Обратно сканиране:разбиране, настройка

  4. Отстраняване на проблеми с репликацията на SQL сървър

  5. Преобразувайте „datetime2“ в „datetimeoffset“ в SQL Server (T-SQL примери)