Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从表到列表的C#SQL记录_C#_List_Console - Fatal编程技术网

从表到列表的C#SQL记录

从表到列表的C#SQL记录,c#,list,console,C#,List,Console,我试图从表中获取所有记录并在控制台中打印出来 我的Userlist.cs public List<Userlist> CreateList() { using (SqlConnection conn = new SqlConnection(Sqlstring)) { using (SqlCommand cmd = new SqlCommand(ListCreateQuery, conn)) { conn.Open

我试图从表中获取所有记录并在控制台中打印出来

我的Userlist.cs

public List<Userlist> CreateList()
{
    using (SqlConnection conn = new SqlConnection(Sqlstring))
    {
        using (SqlCommand cmd = new SqlCommand(ListCreateQuery, conn))
        {
            conn.Open();

            using (SqlDataReader reader = cmd.ExecuteReader())
            {
                List<Userlist> Users = new List<Userlist>();

                while (reader.Read())
                {
                    Userlist U = new Userlist();
                    U.fornavn = (string)reader["Fornavn"];
                    U.efternavn = (string)reader["Efternavn"];
                    U.mail = (string)reader["Mail"];
                    U.tlfnr = (string)reader["TlfNr"];

                    Users.Add(U);
                }

                return Users;
            }
        }              
    }
}

当我运行它时,它只打印
mynamespace.userlist
3次(我的记录数)

您在对象上使用的字符串,因此它打印对象名称

您需要在每个属性上使用它并写入:

            foreach(Userlist user in UL.CreateList())
            {
                Console.WriteLine(user.fornavn);
                Console.WriteLine(user.efternavn );
                Console.WriteLine(user.mail);
                Console.WriteLine(user.tlfnr);
            }

您正在对象上使用toString,因此它将打印对象名称

您需要在每个属性上使用它并写入:

            foreach(Userlist user in UL.CreateList())
            {
                Console.WriteLine(user.fornavn);
                Console.WriteLine(user.efternavn );
                Console.WriteLine(user.mail);
                Console.WriteLine(user.tlfnr);
            }

将类对象传递到
控制台.WriteLine
将调用它的
.ToString()
方法(如果对象不是
null
)。如果希望在调用
.ToString()
时显示属性值,可以
重写类中的方法:

public class Userlist
{
    .....

    public override string ToString()
    {
        return "fornavn: " + fornavn + " efternavn: " + efternavn + " mail: " + mail 
                       + " tlfnr: " + tlfnr;
    }
} 

将类对象传递到
控制台.WriteLine
将调用它的
.ToString()
方法(如果对象不是
null
)。如果希望在调用
.ToString()
时显示属性值,可以
重写类中的方法:

public class Userlist
{
    .....

    public override string ToString()
    {
        return "fornavn: " + fornavn + " efternavn: " + efternavn + " mail: " + mail 
                       + " tlfnr: " + tlfnr;
    }
} 

因为这是你的课。重写该类的
ToString
,或选择该类的属性。。。对于axample:
Console.WriteLine(user.fornavn)我是新来列表的,所以它的尝试和错误最多,我该如何更改它,以便它打印出列表中的内容?啊,谢谢你的Codexer,这解决了我的问题!这回答了你的问题吗?因为这是你的课。重写该类的
ToString
,或选择该类的属性。。。对于axample:
Console.WriteLine(user.fornavn)我是新来列表的,所以它的尝试和错误最多,我该如何更改它,以便它打印出列表中的内容?啊,谢谢你的Codexer,这解决了我的问题!这回答了你的问题吗?这正是我想要做的,我将如何实现这一点?以前从未使用过覆盖。只需将答案中的内容添加到您的
用户列表
。然后,当您将对象传递到
控制台.WriteLine
时,它将调用此版本的
.ToString()
。如果你想了解更多,这里有一个指向MSDN文档的链接:()是的,它可以工作!感谢您的帮助和阅读:)
将类对象传递到Console.WriteLine将调用它的.ToString()方法,如果该对象不为null
可能
传递对象…
该方法中的任何内容都将调用
ToString
。当然,你提到如果它不为null,它就不能调用那个方法。这就是我想要做的,我该如何实现它?以前从未使用过覆盖。只需将答案中的内容添加到您的
用户列表
。然后,当您将对象传递到
控制台.WriteLine
时,它将调用此版本的
.ToString()
。如果你想了解更多,这里有一个指向MSDN文档的链接:()是的,它可以工作!感谢您的帮助和阅读:)
将类对象传递到Console.WriteLine将调用它的.ToString()方法,如果该对象不为null
可能
传递对象…
该方法中的任何内容都将调用
ToString
。当然,您提到了如果它不为null,则不能调用该方法。