2017-09-13 8 views
0

J'ai des difficultés à faire en sorte que mon application Web soit publiée et fonctionne correctement sur notre serveur IIS.Problèmes de connexion à la base de données Progress via ODBC dans l'application Web publiée

Lorsque je teste à partir de Visual Studio 2015 avec les mêmes configurations de pilote ODBC, tout fonctionne correctement. Ce n'est qu'une fois que j'essaie de publier l'application Web et que j'y accède à partir du serveur Web IIS dans un navigateur que j'ai des problèmes.

J'utilise Visual Studio 2015 v14.0.25431.01 Mise à jour 3

Le serveur IIS est un 64-bit Windows 2016 serveur

Le pilote ODBC est un pilote OpenEdge Progress 11,6 à 32 bits

la connexion ODBC est configuré à l'aide du gestionnaire ODBC 32 bits trouvés dans c: \ windows \ SysWOW64 \ odbcad32

je suis tombé sur de nombreux forums qui disent pour vous assurer que le pilote ODBC est installé correctement, et en utilisant le bon Gestionnaire ODBC, dont je t est.

Je suis également tombé sur des articles qui font référence à la compilation de l'application Web et qui spécifient dans le gestionnaire de configuration l'utilisation de x86 au lieu de n'importe quel processeur. x86 n'est pas une option quand je vais dans le gestionnaire de configuration.

Je ne sais pas comment résoudre cette erreur afin de pouvoir accéder aux nouvelles applications Web à partir du serveur IIS.

L'erreur que je reçois est ...

Server Error in '/' Application.

ERROR [IM014] [Microsoft][ODBC Driver Manager] The specified DSN contains an architecture mismatch between the Driver and Application

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.Data.Odbc.OdbcException: ERROR [IM014] [Microsoft][ODBC Driver Manager] The specified DSN contains an architecture mismatch between the Driver and Application

Source Error: An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below. Stack Trace:

[OdbcException (0x80131937): ERROR [IM014] [Microsoft][ODBC Driver Manager] The specified DSN contains an architecture mismatch between the Driver and Application] System.Data.Odbc.OdbcConnection.HandleError(OdbcHandle hrHandle, RetCode retcode) +1358681 System.Data.Odbc.OdbcConnectionFactory.CreateConnection(DbConnectionOptions options, DbConnectionPoolKey poolKey, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningObject) +78

Toutes les suggestions, des conseils, des recommandations?

Répondre

1

Le problème est ce que le message d'erreur essayer de dire (peut-être un peu clair):

ERROR [IM014] [Microsoft][ODBC Driver Manager] The specified DSN contains an architecture mismatch between the Driver and Application

Cela signifie que votre essayez d'utiliser un pilote ODBC 32 bits avec la version 64 bits d'IIS et il n'est pas possible d'utiliser des pilotes/bibliothèques 32 bits dans des applications 64 bits (pas seulement pour IIS, mais pour n'importe quelle application Windows).

Vous n'avez aucun problème avec VS 2015 car c'est un 32-bit application, donc le pilote et l'application correspondent. Vous devez installer le pilote ODBC 64 bits pour IIS et configurer un ODBC 64 bits.

+0

Merci pour la réponse rapide. Je ne savais pas si je serais capable d'utiliser le pilote 32 bits sur le serveur ou non. Je vais essayer d'obtenir un bon pilote 64 bits et voir si cela va résoudre tous mes problèmes. – shadderk