views:

57

answers:

2

Is there any solution for this error on Windows 7 64 bit (because I think it's the main cause) in .NET application? (ASP.MVC2 with EF4)

I've:

  • Windows 7 64 bit
  • Oracle Express 10g (i've tried to install Client 11g, but then, during installation i got another error - Net Configuration Assist~ Error - something about oraclj11 and java)

I've also checked and tried:

  • tnsnames.ora - everything is all right
  • tnsping - was successfull
  • sqlnet.ora - NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)

I'd like to connect with Oracle DB via ASP application (as above) and I still see this error. .NET cannot see alias which is in tnsnames.ora

A: 

Error: ORC-12154 and Oracle Provider not compatible with current OS (povider 32 bit, OS 64)

OS: Windows 7 64-bit, .NET 4.0, Visual Studio 2010, Tunel via SSH (putty)

Solution:

  1. Uninstall oracle software, especially Oracle’s client (OracleExpress Client and whole db 10g)
  2. Install Oracle 11g Client for Windows 7 64-bit. If occurs errors during installation (Config Net Assistant), check and clean previous Oracle’s software. Everything including register and ORACLE_HOME, TNS_ADMIN environment variables should be removed.
  3. Install Oracles .NET tools for Visual Studio (it prevents 32 bit and 64 bit’s conflict)
  4. Configure TNSNAMES.ORA and SQLNET.ORA

    • tnsnames.ora - check aliast with tnsping in cmd prompt (tnsping.exe exists in /bin
    • check environment variables: ORACLE_HOME, optional TNS_ADMIN: “ORACLE_HOME/NETWORK/ADMIN”
    • sqlnet.ora variables :

      NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
      SQLNET.AUTHENTICATION_SERVICES = (NTS)  
      NAMES.DEFAULT_DOMAIN = ORCA
      

For me atleast works fine.

Simon
A: 

The problem seems to be with the 32-bit Oracle client and the "(x86)" in the long-name file path. I've got mine to work by using this in a .bat file.

start /B "C:\Progra~2\Microsoft Visual Studio 10\Common7\IDE" "C:\Progra~2\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe"

Shawn