Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    eccezione sul'indice della matrice

    Salve, io ho qst codice...

    MySqlConnection connection = new MySqlConnection();
    connection.ConnectionString = "Data Source=localhost; Database=portfolio; User ID=amministratore; password=admin";
    connection.Open();


    string SQL = "select COUNT(*) as num_commesse from commessa where settore=?";

    //Response.Write(SQL);


    MySqlCommand cmd = new MySqlCommand(SQL, connection);
    cmd.Parameters.Add("?",id_settore);
    MySqlDataReader dr = cmd.ExecuteReader();
    if (dr.HasRows)
    {
    while (dr.Read())
    {
    int num_commesse = System.Convert.ToInt32(dr["num_commesse"]);
    string[] denominazione = new string[num_commesse+1];
    string[] descrizione = new string[num_commesse+1];

    }
    }
    else
    {
    Response.Write("Non ci sono commesse");
    }
    dr.Close();


    string SQL1 = "select * from commessa where settore=?";

    MySqlCommand cm = new MySqlCommand(SQL1, connection);
    cm.Parameters.Add("?",id_settore);
    MySqlDataReader ds = cm.ExecuteReader();

    if (ds.HasRows)
    {
    int m =0;
    while (ds.Read())
    {
    denominazione[num_commesse]= ds["denominazione"].ToString();
    descrizione[num_commesse] = ds["descrizione"].ToString();

    }

    }


    ds.Close();

    connection.Close();

    }

    Quando lo avvio mi da questa eccezione:

    Indice oltre i limiti della matrice.

    sulla riga:

    descrizione[num_commesse] = ds["descrizione"].ToString();

    Come posso risolverlo?

  2. #2
    descrizione[num_commesse] = ds["descrizione"].ToString();

    quell'assegnazione non può funzionare, la variabile descrizione[] la devi dichiarare fuori dal while dr.read()
    ...NO ONE IS INNOCENT ANYMORE...

  3. #3
    cioè?
    mi posti il codice?

  4. #4
    e poi perchè non è giusto? Scusa altrimenti nn mi dava errore anche sulla stringa precedente cioè quella :

    denominazione[num_commesse]= ds["denominazione"].ToString();

    ?????????

  5. #5
    la variabile è dichiarata all'interno del while e fuori non la vedi...
    ...NO ONE IS INNOCENT ANYMORE...

  6. #6
    ma allora mi dovrebbe dare errore anche sulla variabile descrizione, e nn me lo da!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.