Dispose en Formularios

23/09/2004 - 08:47 por Anonimo | Informe spam
Buenas, para crear fácilmente Clases de Acceso a bases de
datos hago lo siguiente. Añado un form, vacio, y a
arrastro los datasets y el oledbAdapter. Creo los métodos
que me hacen falta y lo uso como una clase mas, sin
hacerle un show, evidentemente.

Mi problema es cuando quiero eliminar esos objetos
mediante dispose, porque consumen muchos recursos. ¿Cómo
debo hacerlo? Los formularios tienen un atributo
component, pero el diseñador no agrega los controles a
ese atributo. ¿Hay que hacerlo a mano?. Por ahora estoy
haciendo un dispose de los datasets dentro del propio
dispose del formulario.

protected override void Dispose( bool disposing )
{
if( disposing )
{
if(components != null)
{
components.Dispose();

}
}
this.oleDbDataAdapterCapitulos.Dispose();
this.dataSetCapitulos1.Dispose();
base.Dispose( disposing );
}


Bueno, que me decis?
 

Leer las respuestas

#1 Anonimo
23/09/2004 - 10:11 | Informe spam
Otra posibilidad es en el constructor:


this.components=new Container();
this.components.Add(this.dataSetExpedientes1);
this.components.Add(this.oleDbDataAdapterExpedientes);

Entonces this.components!=null y llama al método dispose
de components.


Qué me decis?

Buenas, para crear fácilmente Clases de Acceso a bases


de
datos hago lo siguiente. Añado un form, vacio, y a
arrastro los datasets y el oledbAdapter. Creo los


métodos
que me hacen falta y lo uso como una clase mas, sin
hacerle un show, evidentemente.

Mi problema es cuando quiero eliminar esos objetos
mediante dispose, porque consumen muchos recursos. ¿Cómo
debo hacerlo? Los formularios tienen un atributo
component, pero el diseñador no agrega los controles a
ese atributo. ¿Hay que hacerlo a mano?. Por ahora estoy
haciendo un dispose de los datasets dentro del propio
dispose del formulario.

protected override void Dispose( bool disposing )
{
if( disposing )
{
if(components != null)
{
components.Dispose();

}
}
this.oleDbDataAdapterCapitulos.Dispose();
this.dataSetCapitulos1.Dispose();
base.Dispose( disposing );
}


Bueno, que me decis?
.

Preguntas similares