Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2005
    Messaggi
    139

    come e dove istanziare la classe?

    Salve,


    in una pagina *.aspx.cs utilizzo in quasi ogni metodo
    associato ad un evento della mia *.aspx alcuni metodi contenuti in una
    classe da me implementata.
    Mi conviene istanziare la classe a livello globale
    e quindi nella dichiarazione delle variabili scrivere


    1) MyClass x = new Myclass();


    oppure in ogni metodo utilizzare


    2) x = (new MyClass()).metodo


    o altro?


    Spero di essere stato chiaro.


    In ogni caso, il nuovo oggetto di MyClass creato quando viene distrutto
    in entrambi i casi(nel caso 1 all'uscita dalla pagina e nel caso 2
    all'uscita dal metodo?


    Vorrei per favore qualche chiarimento in merito e/o qualche
    suggerimento.
    GRAZIE

  2. #2
    Utente di HTML.it L'avatar di Joe Taras
    Registrato dal
    Nov 2003
    residenza
    Taranto
    Messaggi
    955

    Re: come e dove istanziare la classe?

    Io la istanzierei globale web form che stai creando, poi dipende cosa fa effettvamente questa classe

  3. #3
    Utente di HTML.it L'avatar di cassano
    Registrato dal
    Aug 2004
    Messaggi
    3,002
    io invece userei la seconda in modo da gestire meglioil tutto.

    ma se gestisci bene la classe ,cioè la crei e la distruggi quando ti serve ,la puoi mettere a livello di modulo.

  4. #4

    Re: come e dove istanziare la classe?

    Originariamente inviato da temerario
    In ogni caso, il nuovo oggetto di MyClass creato quando viene distrutto
    in entrambi i casi(nel caso 1 all'uscita dalla pagina e nel caso 2
    all'uscita dal metodo?
    Nell'ambiente managed offerto dal framework non e' necessario preoccuparsi di distruggere gli oggetti in quanto ci pensa uno dei servizi del framewor che si occupa proprio della pulizia della memoria dagli oggetti non piu' utilizzati: il garbage collector. Se invece la tua classe contiene delle risorse come ad es. apertura di una connessione verso un db e/o apertura di un file allora sei tu che devi preoccuparti di chiudere le risorse occupate (ad es. implementando il metodo dispose dell'interfaccia IDisposable) ma su questo e' necessario maggiore approfondimento es. su msdn.
    Un suggerimento interessante potrebbe essere se ad es. hai un oggetto che apre la connessione e lo utilizzi in molti metodi della tua pagina aspx, puoi dichiararlo come una variabile visibile all'intera pagina, istanziarlo nell'evento page_load e chiudere le risorse da lui occupate nell'evento page_prerender.
    Saluti a tutti
    Riccardo

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.