sql >> Base de Datos >  >> RDS >> Oracle

Agrupación de conexiones ODP.NET:cómo saber si se ha utilizado una conexión

La agrupación de conexiones proporcionada por ODP.NET es completamente opaca. Es decir, no tiene fugas de la forma en que me gustaría que fuera:no hay forma de saber si una conexión se ha usado antes o si es nueva. Sin embargo, es una abstracción con fugas de otra manera:cualquier estado de sesión (por ejemplo, variables de ámbito de paquete, que son de ámbito de sesión) se conserva entre los usos de la conexión. Dado que se trata de una pregunta sobre cómo determinar el estado usado frente al nuevo de una conexión sin ir a la base de datos , la respuesta es que simplemente no se puede hacer usando el conjunto de conexiones integrado de ODP.NET.

Eso deja dos opciones:

  1. Cree una implementación de grupo de conexiones que proporcione esa información o realice una inicialización definida por el usuario tras la creación de cada nueva conexión; o
  2. Realice un viaje de ida y vuelta a la base de datos para determinar el estado usado frente al nuevo de la conexión.