我的托管ODP.net Web应用程序可在本地工作,但将其部署到服务器时会失败,并显示以下错误:

“TNS:listener当前不知道连接描述符中请求的服务”

从环顾四周看,这似乎是因为无法访问tnsnames.ora文件。

我尝试了以下方法,但均未成功:

  • 将tnsnames.ora文件(与本地相同的文件)放入[oracle home] [product] ...\network\admin文件夹中。
  • 在Managed ODP的web.config部分中设置TNS_ADMIN设置,以指向环境变量。
  • 在Managed ODP的web.config部分中设置TNS_ADMIN设置,直接指向tnsnames.ora文件。

  • 在服务器上,尝试运行tnsping会产生错误TNS-03502:找不到消息3502;未找到消息3502。没有用于product = NETWORK,facility = TNS的消息文件

    我想念什么?

    最佳答案

    尝试使用不依赖于tnsnames.ora的connection string,例如:

    Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=MyHost)(PORT=MyPort)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=MyOracleSID)));User Id=myUsername;Password=myPassword;
    

    10-08 18:54