Linq 仅选择一列并向下列出

问题描述 投票:0回答:2

我创建了名为 DbDelta 的数据库, 我有一个名为 TblBrands 的表, 我试图从 TblBrands 表 ToList() 中 linq Brandname 列。 所有 Sql 连接都正常工作,但我无法获取 List()。

我试过类似的东西。

public override IEnumerable<TblBrand> BrandList()
        {
            return Context.TblBrand.Select(r=> new
            {
                r.BrandName,
            }).ToList();
        }
c# windows linq windows-forms-designer
2个回答
1
投票
public IEnumerable<string> BrandList()
{
    return Context.TblBrand.Select(r => r.BrandName).ToList();
}

-1
投票

这是我用来将数据添加到列表的代码调用是从另一种形式进行的

       public List<object> readData(List<object> list)
    {
        using (SQLiteConnection conn = new SQLiteConnection($"Data Source = '{dbName}';Version=3;"))
        {
            conn.Open();
            using (SQLiteCommand cmd = new SQLiteCommand($"SELECT * FROM FriendsData", conn))
            {
                using (var rdr = cmd.ExecuteReader())
                {
                    while (rdr.Read())
                    {
                        gv_dbInt = rdr["FID"].ToString().Trim();
                        list.Add(gv_dbInt);
                        gv_firstName = rdr["fxFirstName"].ToString().Trim();
                        list.Add(gv_firstName);
                        gv_lastName = rdr["fxLastName"].ToString().Trim();
                        list.Add(gv_lastName);
                    }
                }
            }

        }
        return list;
    }

OK 现在我已经将列表返回给调用者,它用于填充 DataGridView

       public void loadDGV()
    {
        frmCRUD form = new frmCRUD();
        {
            form.readData(list);
            for (int index = 0; index < list.Count - 2; index += 3)
            {
                dgvPerson.Rows.Add(list[index], list[index + 1], list[index + 2]);
            }
            dgvPerson.Sort(dgvPerson.Columns[2], ListSortDirection.Ascending);
        }
    }
© www.soinside.com 2019 - 2024. All rights reserved.