方法 'Get sTring' 没有重载需要 0 个参数

No overload for method 'Get sTring' takes 0 arguments

我有一个将数据从 connectionString 传递到 listBoxDat 的按钮代码:

private void btnClick_Click(object sender, RoutedEventArgs e)
    {
        tbTitle.Text = "ADO.Net";
        listBoxData.Background = Brushes.LemonChiffon;

        string cs = ConfigurationManager.ConnectionStrings["crams"].ConnectionString;
        List<string> titles = new List<string>();

        using (SqlConnection conn = new SqlConnection(cs))
        {
            conn.Open();
            SqlCommand cmd = conn.CreateCommand();
            cmd.CommandText = "Select filenum FROM dbo.Complaint";
            SqlDataReader reader = cmd.ExecuteReader();

            while (reader.Read())
            {
                titles.Add(reader.GetString());
            }
            listBoxData.ItemsSource = titles;
        }


    }

我的错误列表一直说方法 'Get sTring' 没有重载需要 0 个参数。我不确定这是什么意思!

SqlDataReader.GetString 方法需要索引的 int 参数,在您的情况下指定 0 因为您只选择了一个字段。

titles.Add(reader.GetString(0));

代码行:

reader.GetString()

必须提供要从中检索数据的列的索引。

reader.GetString(0)

对于第 0 列。