用c#列出sql数据

本文关键字:数据 sql 列出 | 更新日期: 2023-09-27 18:17:16

我试图通过列表在网格上列出我的数据库中的所有成员。我不知道我是否走对了路。

我用这个:

        public List<Member> Members()
        {
            List<Member> list = new List<Member>();
            string SelectMembers = "SELECT * FROM Members";
            using (sqlCommand = new SqlCommand(SelectMembers, sqlConnection))
            {
            }
            return list;
        }

但是"如果"我在正确的轨道上…在using部分,我真的不知道该怎么做……我不是要代码,但我希望有人告诉我该怎么做。谢谢:)

用c#列出sql数据

使用代码示例更容易:

using (var sqlCommand = new SqlCommand(SelectMembers, sqlConnection)) {
    // fetch data and iterate through results
    var reader = sqlCommand.ExecuteReader();
    while (reader.Read()) { 
        // create an object, set its properties and add it to the return list
        Member member = new Member();
        member.SomeProperty = reader["MY_COLUMN"];
        list.Add(member);
    }
}

否则你可以使用LINQ to SQL, Scott Gu的博客上有一个很棒的教程:http://weblogs.asp.net/scottgu/archive/2007/05/19/using-linq-to-sql-part-1.aspx

using是一个很好的起点。然后,我要做的是循环遍历结果集,将Member类的properties分配给数据集中的列。当您想要通读数据时,有多种选择。您可以使用DataSetDataTableSqlDataReader

使用sqlcommand尝试绑定数据读取器对象,然后循环到该数据读取器以绑定列表,如

while (objDataReader.Read())
                {
                    objM = new Member();
                    if(objDataReader["Id"] != DBNull.Value)
                        objM.Id = Convert.ToInt32(objDataReader["Id"]);
                    list.Add(objM );
                }
             return list;

您可以使用SqlDataAdapter来查询这些数据。

DataSet members = new DataSet();
ufing(SqlDataAdapter adapter = new SqlDataAdapter(sqlCommand))
{
    adapter.Fill(members, "Members");
    //Fill your list there from the DataSets's DataTable
}