none
Prestazioni metodi RRS feed

  • Domanda

  • Ciao, sto cercando di ottimizzare le prestazioni di un mio progetto ed ho un dubbio.
    Ho una classe che svolge determinate operazioni ricorrenti nella mia applicazione, come per esempio caricare una DataTable in base ad una query:

    public static DataTable CaricaDt(string query, DataTable dt)
            {
                    try
                    {
                        Connection.Apri();
                        MySqlDataAdapter da = new   MySqlDataAdapter(query, Connection.cnMySql);
                        da.Fill(dt);
                        Connection.Chiudi();
                        return dt;
                     }
    
            }

    Praticamente io dalla classe in cui necessito di questa datatable "riempita", mando come parametri la query e la datatable, il metodo riempie questa data table e poi la restituisce.

    Il fatto che io invii come parametro una dataTable, la quale viene riempita e poi restituita, non equivale al copiare la datatable quando la invio come parametro e poi a farla nuovamente ricopiare quando scrivo:
    [B]datagrid.DataSource=CaricaDt(query,table)[/B]?
    Non passando il riferimento della dataTable, io vado ogni volta a farla ricreare in ram o sbaglio?

    venerdì 3 maggio 2013 10:31

Risposte

  • Ciao rizzotti91,

    You wrote on 03/05/2013 :

    Il fatto che io invii come parametro una dataTable, la quale viene riempita e poi restituita, non equivale al copiare la datatable quando la invio come parametro e poi a farla nuovamente ricopiare quando scrivo:
    [B]datagrid.DataSource=CaricaDt(query,table)[/B]?
    Non passando il riferimento della dataTable, io vado ogni volta a farla ricreare in ram o sbaglio?

    è un reference type, stai semplicemente passando il puntatore.

    .m



    blog @ //milestone.topics.it
    venerdì 3 maggio 2013 10:55