В моем приложении учитель может иметь несколько классов, и когда я исключаю профиль учителя, я должен, во-первых, удалить его классы. Я пытаюсь поместить каждый class_id
этого учителя в массив int
, чтобы позже удалить все классы, содержащиеся в этом массиве.IndexOutOfRange Исключение Брошено на установку значения Int для массива
Это мой код до сих пор:
int x = 0;
int[] count = new int[x];
while (reader_SelectedClasses.Read())
{
if(x != 0)
{
x++;
count = new int[x];
}
count[x] = _class.Class_id = reader_SelectedClasses.GetInt16("class_id");
}
И это то, что
reader_SelectedClasses.Read()
делает:
select class_id from tbl_class where user_id = " + id + ";
И это возвращение, когда я пытаюсь это на MySQL :
Но это возвращает мне исключение IndexOutOfRangeException при запуске кода в моем классе DAO. Что мне не хватает? Уже пошел here, но не совсем понял. Может кто-нибудь объяснить несколько слов и пост и фиксированный код для этого?
Условный условие никогда не выполняется, и значение х никогда не увеличивается , Таким образом, вы обычно добавляете значение к тому же индексу. –
После редактирования вашего вопроса я снимаю свои комментарии. –
вам нужно пройтись по вашей логике по строчке, и вы увидите, где именно возникла проблема. Вы пытаетесь получить первый индекс пустого массива. Также как x будет увеличиваться? – Nkosi