如何将数据加载到List中

时间:2014-12-25 21:14:50

标签: c# database load console-application

我正在将数据从数据库加载到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>();

2 个答案:

答案 0 :(得分:3)

让我们假设您有一个用户类来表示列表中的元素类型。

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

    public string Name { get; set; }
}

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

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() });
            } 

        }
}

答案 1 :(得分:2)

除了创建用户,填充其属性并将其添加到列表中之外,您无法做其他事情......

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