Как вывести все данные из таблицы SQLite в Unity?

96
01 февраля 2021, 21:50

Имеется код, но он выводит только последнюю строку


    public void Show_DB()
    {
        connection();
        try
        {
            cmd_db = new SqliteCommand("SELECT * FROM Items", con_db);
            rdr = cmd_db.ExecuteReader();
            while (rdr.Read())
            {
                IDtext.text = rdr[0].ToString();
                Nametext.text = rdr[1].ToString();
                Counttext.text = rdr[2].ToString();
                Desctext.text = rdr[3].ToString();
                Statustext.text = rdr[4].ToString();
            }
        }
        catch (Exception ex)
        {
            text.text = ex.ToString();
        }
        Disconnect();
    }

Как это можно исправить? Нужно, чтобы код выводил все строки из БД, в UnityUI Text. К примеру, Нужно чтобы все id вываливались в блок IdText, и каждый начинался с новой строки. Лучше бы, конечно, чтобы на каждую строку создавался новый префаб, содержащий эту строку, чтобы можно было сделать динамический список.

Answer 1

В общем случае вам достаточно перестать полностью перезаписывать новыми значениями поля text в каждой итерации, начав дополнять существующие значения - новыми. Так же необходимо добавлять к строкам Environment.NewLine для вставки символа переноса:

public void Show_DB()
{
    connection();
    try
    {
        cmd_db = new SqliteCommand("SELECT * FROM Items", con_db);
        rdr = cmd_db.ExecuteReader();
        while (rdr.Read())
        {
            IDtext.text += rdr[0].ToString() + Environment.NewLine;
            Nametext.text += rdr[1].ToString() + Environment.NewLine;
            Counttext.text += rdr[2].ToString() + Environment.NewLine;
            Desctext.text += rdr[3].ToString() + Environment.NewLine;
            Statustext.text += rdr[4].ToString() + Environment.NewLine;
        }
    }
    catch (Exception ex)
    {
        text.text = ex.ToString();
    }
    Disconnect();
}
READ ALSO
Цветные символы в строке [дубликат]

Цветные символы в строке [дубликат]

как можно с помощью C# сделать отдельные символы в строке консоли цветными?

100
Пропали всплывающие подсказки в Xaml Forms(VS 2017)

Пропали всплывающие подсказки в Xaml Forms(VS 2017)

Неожиданно пропали всплывающие подсказки на языке XAML, в том же проекте на C# они работаютЗаходил в настройки - в С# IntelliSense включен, в XAML просто...

109
Как организовать подсвечивание 3D объекта с которым происходит контакт?

Как организовать подсвечивание 3D объекта с которым происходит контакт?

Хочу повторить некий "Select(); - Deselect();", как показано на скриншоте

152
Не вставляет картинку в RichTextBox

Не вставляет картинку в RichTextBox

Пытаюсь вставить картинку в RichTextBox разными способами, но она не отображается

106