由于此错误,我的代码行无法工作?

时间:2019-04-24 09:32:11

标签: c# winforms

所以基本上这是问题所在,我尝试了许多方法来解决它,但是没有一个起作用!错误出现在此行:Templist.Add((string)result["titre"];Templist是错误!

private List<string> ReadNews()
{
    string SqlText = "SELECT * FROM nom_table"; 
    List<string> Templist; 
    MySqlConnection SqlConnection = new 
    MySqlConnection(TheConnectionString);
    MySqlCommand SqlCommand = new 
    MySqlCommand(SqlText,SqlConnection);


    MySqlDataReader result = SqlCommand.ExecuteReader();

    while (result.Read())
    {
        Templist.Add((string)result["titre"]);
    }

    return Templist;
}

3 个答案:

答案 0 :(得分:5)

因为尚未初始化Templist,直到初始化/分配实例后,声明的变量(Templist)才为null,并且您无法向{{1}添加内容}就是错误消息说的。该代码应为:

null

我想在这里添加的另一件事是使用List<string> Templist = new List<string>(); 来正确处置对象,并且还指定了using而不是column names。考虑以下修改后的代码段:

*

答案 1 :(得分:3)

临时列表为空,您尚未创建实例。初始化:

List<string> Templist = new List<string>();

答案 2 :(得分:3)

您的 Templist 应该在使用前进行初始化。 将您的声明行更改为此:

List<string> Templist = new List<string>();