Как динамически заполнять список со значениями SQL - PullRequest
4 голосов
/ 02 февраля 2012

Я новичок в C #.То, что я пытаюсь сделать, это извлечь данные из столбца в базе данных SQL и записать их в список.По сути, я хочу, чтобы данные в столбце part_num моей таблицы динамически отображались в списке.

Я видел:

this.listParts.Items.AddRange(new object[] {"Part1", "Part2"});

Но как мне заменить «Part1»и «Part2» с динамически генерируемыми значениями из SQL?

public mainForm()
{
    InitializeComponent();
    SqlConnection conn = new SqlConnection(
        "Data Source=DBELL;Initial Catalog=part_table;Integrated Security=True");
    conn.Open();
    DataSet ds = new DataSet();
    SqlDataAdapter adapter = new SqlDataAdapter(
        "SELECT part_num from customParts", conn);
         adapter.Fill(ds);
    foreach (DataRow row in ds.Tables[0].Rows)
    {
        for (int i = 0; i < ds.Tables[0].Columns.Count; i++)

        this.listParts.Items.AddRange(new object[] {"Part1", "Part2"});
    }
}

Любая помощь приветствуется!

1 Ответ

9 голосов
/ 02 февраля 2012

Почему бы не использовать DataTable в качестве DataSource:

public mainForm()
        {
            InitializeComponent();
            SqlConnection conn = new SqlConnection("Data Source=DBELL;Initial Catalog=part_table;Integrated Security=True");
            conn.Open();
            DataSet ds = new DataSet();
            SqlDataAdapter adapter = new SqlDataAdapter(
            "SELECT part_num from customParts", conn);
            adapter.Fill(ds);
            this.listParts.DataSource = ds.Tables[0]; 
            this.listParts.DisplayMember = "part_num"; 
        }

Вы должны прочитать о DataSets или даже лучше EntityFramework и привязке данных.

...