Поместите вывод SqlCeDataReader в строку (C #) - PullRequest
0 голосов
/ 02 января 2012

В настоящее время я могу вывести это только в строку, хотя я пытался создать массив и использовать int [], но ему это совсем не нравится. Как можно вывести вывод reader.GetInt32(0) в массив?

com.Parameters.AddWithValue("date", Form1.date);
SqlCeDataReader reader = com.ExecuteReader();
while (reader.Read())
{
    int resultsoutput = reader.GetInt32(0);
    MessageBox.Show(resultsoutput.ToString());
}

Ответы [ 2 ]

1 голос
/ 02 января 2012

reader.GetInt32(0); читает только первый столбец. Чтобы прочитать все столбцы в массив, используйте GetValues().

using System.Linq;
// ...
while (reader.Read())
{
    Object[] values = new Object[reader.FieldCount];
    int fieldCount = reader.GetValues(values);
    values.ToList().ForEach(value => results.Add(parseInt(value));
}
1 голос
/ 02 января 2012
        List<int> results = new List<int>();
        com.Parameters.AddWithValue("date", Form1.date);
        SqlCeDataReader reader = com.ExecuteReader();
        while (reader.Read())
        {
            int resultsoutput = reader.GetInt32(0);

            results.Add(resultsoutput);
            // I wouldn't use a MessageBox in this loop
            // MessageBox.Show(resultsoutput.ToString());
        }

Добавить в коллекцию

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...