C#SQL查询结果到文本框

本文关键字:文本 结果 查询 C#SQL | 更新日期: 2023-09-27 18:27:53

这里是新手,正在将我在python/sqlite中的一个小程序转换为C#/SQL Server。我遇到了一个问题,让SQL查询根据组合框的选择将结果写入两个文本框(textBox1和textBox2)(顺便说一句,它确实正确填充)。这是我尝试的代码,只需要将结果写入文本框的最后一位:

    private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
    {
        textBox1.Clear();
        string selected = (this.comboBox1.SelectedIndex).ToString();
        var selected2 = from branches in branchesDataSet.branches
                        where branches.branchCode == "selected"
                        select new
                        {
                            branches.branchCode
                            branches.branchName
                        };

我试着把它传递给一个数组,一个列表,但似乎无法得到结果,只有标识符。有什么帮助吗?我哪里错了?

C#SQL查询结果到文本框

目前您拥有的是一个IQueryable<T>,用于某些发音不清的匿名类型T。我假设,因为你使用的是文本框,你最多期望一行,所以:

var row = selected2.FirstOrDefault();
if(row == null) {
    textBox1.Text = textBox2.Text = "n/a";
} else {
    textBox1.Text = row.branchCode;
    textBox2.Text = row.branchName;
}

由于您使用文本框,这意味着您查询一行:

var onerow= selected2.FirstOrDefault();
if(row == null) { textBox1.Text = textBox2.Text = "n/a";} 
else { textBox1.Text = onerow.branchCode; textBox2.Text = onerow.branchName; }

希望这能帮助您