Visualizzazione dei risultati da 1 a 4 su 4

Discussione: Dimensione array

  1. #1

    Dimensione array

    Salve, ho da inserire dei dati provenienti da una stored procedure in un array.

    Il problema e' che l'array va dimensionato prima; ma io non so mai quanti record mi restituisce la stored procedure.

    Per ovviare a questo (per il momento) ho fatto una stored procedure che mi restituisce il numero dei record (Count(0)) e poi con quel dato dimensiono l'array. E' palese che fare due procedure per riempire un array e' un dispendo inutile quanto stupido.

    Qualcuno mi sa dire un metodo alternativo?

    Grazie a tutti
    Ciao ciao

  2. #2
    Forse con un Arraylist.


    codice:
    using System;
    using System.Collections;
    
    class TestArrayList {
        public static void Main() {
            ArrayList myList = new ArrayList();
            int i;
            
            for(i=0; i<5; i++)
                myList.Add(i);
                
            myList.Add("Hello");
            
            for(i=0; iConsole.WriteLine("Array Index [{0}]: {1}", i, myList[i].ToString());
        }
    }

  3. #3
    Il numero dei record lo puoi sapere dopo aver fatto la query.
    Se utilizzi una datatable come contenitore puoi fare:
    MyArray(MyDataTable.Rows.Count)

    e poi per riempire l'array
    Dim dt As DataTable
    Dim dr As DataRow
    For Each dr In dt.Rows

    Next


    Se utilizzi un datareader invece mentre ti scorri i record
    uno per uno, ridimensioni l'array

    Dim x as integer
    While MyDataReader.Read
    ReDim Preserve MyArray(x+1)
    End While

    Tra i due metodi preferisco il primo.
    Ciao
    K
    Kalman

  4. #4
    Grazie mille

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 © 2025 vBulletin Solutions, Inc. All rights reserved.