Domanda

Sto iniziando con SubSonic 3 e sto giocando con l'approccio SimpleRepository. Qual è la durata prevista delle classi SimpleRepository quando utilizzata in un'applicazione desktop?

Dovresti continuare a creare una nuova istanza ogni volta che vuoi toccare il database? Devo creare un'istanza da utilizzare per ciascun gruppo di chiamate al database che avvengono insieme? Devo creare un'istanza singleton all'avvio del programma e utilizzarla per tutto?

Suppongo sia una delle seconde due opzioni, ma non mi è chiaro se sarebbe sicuro creare una singola istanza e usarla per tutte le chiamate o meno. Userò un contenitore IoC se questo è importante.

È stato utile?

Soluzione

Non c'è nulla di male nel mantenere la cosa in vita per la durata della sessione desktop (assicurati di disattivare la roba di migrazione). Quando ho testato perfettivamente il repository ne ho tenuto uno aperto tutto il tempo e non ho riscontrato problemi con perdite di memoria, ma assicurati di chiudere tutti i lettori se li esegui, ecc. Ecc.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top