如何将数据加载到列表中

本文关键字:列表 加载 数据 | 更新日期: 2023-09-27 18:35:14

我正在将数据从数据库加载到 c# 控制台应用程序,但我应该如何将它们放在列表中。

我的代码部分

using (SqlConnection sourceConnection =
                       new SqlConnection(connectionString))
            {
                sourceConnection.Open();
                SqlDataReader myReader = null;
                SqlCommand myCommand = new SqlCommand(
                    "SELECT * FROM " +
                    "dbo.Users;",
                    sourceConnection);
                myReader = myCommand.ExecuteReader();
                //long countStart = System.Convert.ToInt32(myCommand.ExecuteScalar());
                while (myReader.Read())
                {
                    Console.WriteLine(myReader["Id"].ToString());
                    Console.WriteLine(myReader["Name"].ToString());
                } 

我在控制台中打印了它们,但是我应该如何将它们放在列表中。

var listOfUsers = new List<User>();

如何将数据加载到列表中

假设您有一个表示列表中元素类型的 Users 类。

public class Users
{
    public string Id { get; set; }
    public string Name { get; set; }
}

然后,您可以在方法中将它们添加到列表中,该列表将由两列表示:

public void addUsersToList()
{
    using (SqlConnection sourceConnection =
                   new SqlConnection(connectionString))
        {
            sourceConnection.Open();
            SqlDataReader myReader = null;
            SqlCommand myCommand = new SqlCommand(
                "SELECT * FROM " +
                "dbo.Users;",
                sourceConnection);
            myReader = myCommand.ExecuteReader();
            //long countStart = System.Convert.ToInt32(myCommand.ExecuteScalar());
            List<Users> myList = new List<Users>();
            while (myReader.Read())
            {
                myList.Add(new Users { Id = myReader["Id"].ToString(), 
                            Name = myReader["Name"].ToString() });
            } 
        }
}
除了

创建一个用户,填写其属性并将其添加到列表中之外,您无能为力......

            while (myReader.Read())
            {
                User user = new User();
                user.Id = myReader["Id"].ToString();
                user.Name = myReader["Name"].ToString();
                listOfUsers.Add(user);
            }