Выпадающий список из базы данных

#c# #asp.net #database #visual-studio #drop-down-menu

#c# #asp.net #База данных #visual-studio #выпадающее меню

Вопрос:

Я не могу увидеть созданный мной выпадающий список (нажмите на эту ссылку для изображения)

Вот мой код в add.aspx.cs:

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

//ADO.NET
using System.Data;
using System.Data.SqlClient;
using System.IO;

public partial class Admin_Users_Add : System.Web.UI.Page
{
    SqlConnection con = new SqlConnection(kmb.GetConnection());
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            GetCategoryTypes();
        }
    }
    /// <summary>
    /// Allows the user to display list of user types
    /// from the table Types to the dropdownlist control
    /// </summary>
    void GetCategoryTypes()
    {
        con.Open();
        SqlCommand cmd = new SqlCommand();
        cmd.Connection = con;
        cmd.CommandText = "SELECT CatID, Category FROM Categories";
        SqlDataReader dr = cmd.ExecuteReader();
        ddlCategoryTypes.DataSource = dr;
        ddlCategoryTypes.DataTextField = "Category";
        ddlCategoryTypes.DataValueField = "CatID";
        ddlCategoryTypes.DataBind();

        ddlCategoryTypes.Items.Insert(0, new ListItem("Select one...", ""));
        con.Close();
    }
}
 

В базе данных я создал 2 таблицы:

Категории(CatID [PK], Категория [FK])

Типы категорий (категория [PK], Закуски, десерты, напитки)

—- Я хочу увидеть «Закуски, десерты, напитки» в выпадающем списке, который находится в базе данных, на моей веб-странице

Комментарии:

1. Вы должны опубликовать свою разметку. Кроме того, ваш запрос неверен.

2. Эта проблема решается путем редактирования 200 верхних строк в sql и размещения туда салатов, закусок, десертов и т.д. Удаление таблицы CategoryTypes и [FK] в категории в таблице категорий

Ответ №1:

Вам нужно изменить запрос на:

         con.Open();
        SqlCommand cmd = new SqlCommand();
        cmd.Connection = con;
        cmd.CommandText = "SELECT CatID, Appetizers  ', '  Desserts  ', '  Beverages as CatDescription FROM Categories Inner Join CategoryTypes ON Categories.Category = CategoryTypes.Category";
        SqlDataReader dr = cmd.ExecuteReader();
        ddlCategoryTypes.DataSource = dr;
        ddlCategoryTypes.DataTextField = "CatDescription";
        ddlCategoryTypes.DataValueField = "CatID";
        ddlCategoryTypes.DataBind();

        ddlCategoryTypes.Items.Insert(0, new ListItem("Select one...", ""));
        con.Close();