首页 > 解决方案 > 无法在 ASP.NET MVC 中使用实体框架连接到订购 Oracle 数据库

问题描述

我在 ASP.NET MVC 5 中创建了一个项目,使用 EF 数据库优先和 Oracle 12c。它运行正常。但现在,我想换到另一台服务器。但它总是连接到旧服务器。我不知道为什么。

我的web.config样子是这样的:

旧服务器运行正常:

<add name="Entities" 
     connectionString="metadata=res://*/db.Model1.csdl|res://*/db.Model1.ssdl|res://*/db.Model1.msl;provider=Oracle.ManagedDataAccess.Client;provider connection string=&quot;DATA SOURCE=XXX1;PASSWORD=PW1;USER ID=ID1&quot;" 
     providerName="System.Data.EntityClient" /> 

现在,我像这样更改为新服务器。

<add name="Entities" 
     connectionString="metadata=res://*/db.Model1.csdl|res://*/db.Model1.ssdl|res://*/db.Model1.msl;provider=Oracle.ManagedDataAccess.Client;provider connection string=&quot;DATA SOURCE=XXX2;PASSWORD=PW2;USER ID=ID2&quot;" 
     providerName="System.Data.EntityClient" />

但我不知道为什么:项目总是连接到旧数据库(这意味着,当我调试项目时,它总是从 DATA SOURCE=XXX1 获取数据库)。我该如何解决?

标签: c#asp.net-mvcoracleentity-framework

解决方案


搜索您的整个项目(ctrl+shift+F视觉工作室)DATA SOURCE=XXX1以检查其他connectionString声明的位置。

您很可能会在 Web.Debug.config 中找到该连接。将其更改为正确的数据源值。

更多关于 Web Config Transformation的信息(如果你还不熟悉的话..)


推荐阅读