Hola
Cuando tienes dos versiones instaladas 9i, 10g y estan en distinto ORACLE_HOME (es decir directorios de instalacion diferentes). Este es el comportamiento:
1) La version que instalaste al ultimo queda por defecto para efectos de conexion. Es decir tu aplicacion usara los "drivers" de conexion de esta instalacion
2) Cada ORACLE_HOME maneja sus propios archivos de red
No tengo conocimiento como asp.net maneja las conexion a base de datos oracle pero me imagino defines o te pide un "service name o alias de conexion".
Podrias probar lo siguiente:
1) En ambos ORACLE_HOME/network/admin encontraras archivos tnsnames.ora, podrias configurar en ambos alias de conexion que apunten a las BD 9i y 10g. En tu conexion asp.net colocas el string o alias que apunte a la BD 9i.
2) Puedes usar la variable de entorno TNS_ADMIN si quisieras indicar que nivel de entorno utilice algun ORACLE_HOME/network/admin en particular.
Saludos